当前位置: 代码迷 >> 编程 >> 正则表达式札记(Regular expression 1)
  详细解决方案

正则表达式札记(Regular expression 1)

热度:2997   发布时间:2013-02-26 00:00:00.0
正则表达式笔记(Regular expression 1)

1- 纯文本可以匹配

2- . 可以匹配任意一个单个字符,如c.t,匹配cat,cot

3- \代表转义字符,若匹配.就需要\.

4- []元字符,匹配多个字符中的一个,如c[af]t,匹配cat,cft

5- 缩写,字符集合区间  [0-9] = [0123456789]

                                     [A-Z] = 从A-Z所有大写字符

                                     [A-F] = 从A-F所有大写字符

                                     [A-z] = 从A-z所有ascii字符,包含.[^等

可以多个连用,如[A-Za-z0-9]

6- ^匹配特定字符以外字符,取非匹配,除了字符集合内的字符,其他的都匹配,如c[^a]t,匹配cot,不匹配cat

7- [],使用时候需要\[\],转义字符自己\,匹配\符号时候需要\\

8- 匹配空白字符    [\b] 回退字符(backspace)    \f换页    \n 换行  \r 回车   \t制表                \v 垂直制表    PS\r\n  windows换行    \n  linux/unix换行

9- 匹配特定字符   数字  \d = [0-9]  \D = [^0-9]

                            字母和数字  \w = [a-zA-Z0-9_]  \W = [^a-zA-Z0-9_]

                            空白字符  \s = [\f\n\r\t\v]  \S = [^\f\n\r\t\v]

10- 匹配十六进制或八进制数值   

十六进制  \x0A = 10  以ascii数计算符号即\n

八进制     \011 =  9   以ascii数计算符号即\t

11- +匹配一个或多个字符,如\w+,即一直匹配到非\w内容为止,+为元字符,匹配+号同样转义,\+

12- *匹配零个或多个字符,如[\w.]*,可以匹配零个字符

13- ?匹配零个或一个字符,如https?,匹配http和https

14- 匹配的重复次数

+*  无上限

**? 至少匹配零个或一个字符

+*  无法将匹配设定为一个精确的数字

15- 为重复匹配设定一个精确的值 {},如{3},重复匹配三次才算一个匹配,336633,匹配[0-9]{6}

16- 重复匹配次数设定一个区间 {1,2},最少重复1次,最多重复4次

17- 至少匹配n次,无上限,{3,},必须重复3次或更多次,无上限

18- 防止过度匹配,如<a> <\a> abc <a> <\a>,需要用<a>.*?<\a>,否则为把中间的abc也匹配在内

贪婪型   *   +   {n,}

懒惰型   *? +? {n,}?

19- .*,代表任意的都包含