正则表达式常用符号

1 、   *   意思为任意的字符串 表数量 重复零次或更多次;

2、  +   重复一次或更多次;

3、  ?  重复零次或者一次;

4、  {n} 重复n次;

5、  {n,}重复n次或者更多次;

6、   {n,m}重复n~m次;

7、    \b  意思为单词的开头或者结尾,为单词的分界处;

8、    .    意思为除了换行以外的任意字符    譬如\bhello\b.*\bworld\b 是匹配一行内(不包括换行) hello后面任意数量的单词world;

9、    \d  意思为任意的数字  譬如 0\d2\d\d\d 是匹配以“0”开头后面一个任意的数字再有一个“2”后面再有三个任意的数字,\d{2}为匹配两个数字   \d{2,8}为匹配2~8              个数字 ;

10、    \s  意思为任意的空白符;

11、    \w  意思为 任意的字母、数字、汉子或下划线。 \d\w{5}\d 匹配的是有6个字母/数字的单词;

12、    ^   意思为字符串的开始;

13、    $   意思为字符串的结束;

14、    ^   意思为字符串的开始,^\d{5,12}$ 匹配为5到12个数字组成的一串数字(验证QQ号码是否正确);

15、    [a-zA-Z] 意思为匹配大小写的26个字母中的任何一个;

16、    \W  \S  \B  \D  [^X]  [^A-Z]大写的W意思为与小写的完全反义的匹配意思 ;

17、     |    意思为替换及or 的意思 无论“|  ”的前后那个条件匹配都通过;

18、    () 意思是分组,每个小括号内的匹配方式为一组, 譬如 (\d{1,3}\.){3}\d{1,3} 为1~3个数字以及一个“.”为一组重复三次 后面再加上1~3个数字,

                 即:256.300.888.999可以匹配通过;

19、      *?   ??  +?   {n}?   {n,m}? 意思为在能重复的情况下选择重复最少的一种情况,俗称懒惰限定符,例如“aasasas”用a.*s 得到的结果就是它可以匹配所有                    的“aasasas” ,但是如果用a.*?s得到的结果是它只匹配"aas" 和"as"。

 

 

 

 

posted on 2015-12-28 12:55  fyc春  阅读(111)  评论(0编辑  收藏  举报