Chinaunix首页 | 论坛 | 博客
  • 博客访问: 301725
  • 博文数量: 32
  • 博客积分: 665
  • 博客等级: 上士
  • 技术积分: 370
  • 用 户 组: 普通用户
  • 注册时间: 2009-07-25 11:20
文章分类

全部博文(32)

文章存档

2023年(1)

2021年(1)

2020年(2)

2018年(3)

2014年(1)

2013年(2)

2012年(9)

2011年(9)

2010年(2)

2009年(2)

分类: C/C++

2012-08-30 12:21:50

.
匹配除换行符(\n)以外的任意单个字符
 
[]
方括号表示:匹配括号中的一个字符。例如:
[a] 匹配小写字母a
[fdch] 匹配字母fdch中的一个
其中(^)表示除了什么什么字符。例如:
[^b] 匹配除了小写字母b以外的任何字符
(-)表示从什么什么字符一直到什么什么字符。例如:
[a-z0-9] 匹配字母a一直到z或者数字0一直到9这其中的任何一个字符。

[]{-}[]
匹配相减后集合中的一个字符。例如:
[a-z]{-}[k] 匹配除了k以外的任何一个小写字母
 
^
如果它是正则表达式的第一个字符,则此字符匹配行首。
 
$
美刀符:如果它是正则表达式的最后一个字符,则此字符匹配行尾。
 
{}
花括号匹配次数。例如:
a{1,3} 匹配连续字母a,但限制出现1次到3次。即:a aa aaa 三种均可匹配。
k{9} 匹配连续字母k,仅限制出现9次。即:仅 kkkkkkkkk 一种情况可匹配。
 
\
捺斜杠后跟一个字符表示匹配该组合的转义字符。
=====
\n表示换行符
\*表示 * 本身
TODO:列出所有可能
=====
 
*
星号匹配0个或多个前面的表达式
 
+
加号匹配1个或多个前面的表达式
 
?
问号匹配0个或一个前面的表达式
 
|
竖线表示选择操作符,意思为:或者
 
""
双引号表示完整匹配引号中的字符或者字符序列,引号中出现什么字符就匹配什么字符,印号里的字符不做转义处理。例如:
"a3b6" 匹配完全一致的 a3b6 字符序列。
"\n" 则是真的要匹配 \ 和 n 两个连续出现的字符。
 
()
圆括号:表示括号里面的多个表达式组合为一个表达式
 
/
撇斜杠匹配斜杠前面的表达式,但条件是后面跟着的表达式也匹配。当匹配成功后,后面的表达式原地不动不会被成功匹配后pass掉。
 
 
阅读(5679) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~