正则表达式整理资料

资料来源:http://www.cnblogs.com/China3S/archive/2013/11/30/3451971.html,向北方博客

一:字符介绍

1.“^"  :起始位置,”$“: 终止位置(边界条件)

例如 ^I am a studet$  这个意思就是必须以I开头,student结尾

2."\b" :代表着单词的开头或结尾,也就是单词的分界处,元字符,只能匹配字母,数字,下划线,汉字。

例如 要在一个字符串里 I am a student 精确找到 am 就需要使用"\bstudent\b", \bAB匹配A,AB\b匹配B

3."\d": 匹配数字

例如 固定格式的电话号码0939-9393838  ,可使用 ^0d{2,3}-d{7}$

4."\w":匹配字母,数字,下划线

例如,要匹配AA999_djj ,使用"\w+" 就是有多个字母,数字,下划线的组合

5."\s":匹配空格

例如:A B C 可使用 "\w\s\w\s\w",如果字符间有多个空格,则直接把"\s+"让空格重复

6."."这个点,是匹配除了换行符以外的任何字符,比\w 多匹配了空格等字符。

例如:A B C 3II3_KKD,此处就等用".+"了,不能用\w+了 ,因为有空格

7."[abc]":只匹配括号内存在的字符

例如:[a-z]可以表示匹配a至z的所有字母,用来控制只能输入英文,还可加上大小写,如[a-zA-Z]

 

二:量词介绍

1."*" : 重复0次和更多次

例如"aaaaaaaa", a*表示找到所有字符a

2."+":   重复一次或者多次

例如"aaaaaaaa", a+表示找到所有字符a,不同于a*的是,是重复一次和零次的区别

3."?": 重复零次和一次

例如:"aaaaaaaa",a?只会匹配一次,只是一个字符a

4.{n}:重复n次

例如:"aaaaaaaa",a{3}可以匹配到3个a

5{n,m}:重复n次到m次

例如:"aaaaaaaa",a{3,4}可以匹配到3个a和4个a

6.{n,}:重复n次或者更多次

例如:"aaaaaaaa",a{3,}可以匹配到3个a和多个a

 

有了这些量词,就可以理解匹配的各种正则了,比如说刚才的电话号码^0\d+-\d{7}$,这里+表示,至少重复一次数字,可以是01(2222....)-3434343。

如果是^0\d*-\d{7}$,这里的*表示可以是不重复数字,0次或者n次。如:0(12222....)-3434343

如果是^0\d?-\d{7}$,这里的?表示可以是0次和1次的数字。如:0(1)-3434343。

 

posted @ 2016-09-11 13:44  小樱变变变  阅读(203)  评论(0编辑  收藏  举报