正则表达式备忘录

1)

. 匹配除换行符以外的任意字符
\w 匹配字母或数字或下划线或汉字
\s 匹配任意的空白符
\d 匹配任意的数字,例如:\d{2}表示前面的数字连续出现2次,即2个数字。
\b 匹配单词的开始或结束,也就是单词的分界处,它只匹配一个字符位置。
^ 匹配字符串的开始
$ 匹配字符串的结束

2)
* 表匹配次数的符号。重复零次或更多次 它代表的不是字符,也不是位置,而是数量——它指定*前边的内容可以连续重复出现任 意次以使整个表达式得到匹配。
+ 重复一次或更多次
? 重复零次或一次
{n} 重复n次
{n,} 重复n次或更多次
{n,m} 重复n到m次

3)
[] 匹配方括号里面的字符。例:[0-9]代表的含意与\d是完全一致的:即一位数字;[a-zA-Z]表任意一个英文字母。在方括号内只匹配单个字符。

4)反义
\W 匹配任意不是字母,数字,下划线,汉字的字符
\S 匹配任意不是空白符的字符
\D 匹配任意非数字的字符
\B 匹配不是单词开头或结束的位置
[^x] 匹配除了x以外的任意字符
[^aeiou] 匹配除了aeiou这几个字母以外的任意字符

5)字符转义用符号“\”,例:要显示元字符.,要用\.表示。

6) | 指明两项之间的一个选择。要匹配 |,使用 \|

7)例子:

匹配Email地址的正则表达式:\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*
匹配中国邮政编码:[1-9]\d{5}(?!\d)
匹配身份证:\d{15}|\d{18}

posted @ 2011-11-28 10:11  清山博客  阅读(174)  评论(0编辑  收藏  举报