正则表达式学习摘录

1.正则表达式匹配匹配结果,只包括匹配上的部分,不包括整个字符串,
如果需要把整个字符串传递到后续处理时,需要注意。

2.字符点(.)可以匹配任何一个字符,可以在正则表达式中多次出现。

3.[]中的字符,代表字符集,如[ns]将匹配n或者s字符

4.^符号,代表取非操作

5.\b 回退符 \f 换页符 \n 换行符 \r 回车符 \t 制表符(TAB) \v 垂直制表符

6.\d 任何一个数字,\D 任何一个非数字

7.\w 任何一个字母,数字字符,\W 任何一个非字母,非数字字符

8.\s 任何一个空白字符,\S 任何一个非空白字符

9.{}中的哦数字,代表匹配的重复次数

10.{2,4}的含义最少重复2次,最多重复4次

11.?代表出现0次或1次

12.*,+号等匹配时默认都是贪婪型元素符,如

测试文字:<b>hello</b><b>world</b>

采用此正则<[Bb]>.*</[Bb]>匹配时,会从头匹配到结尾,结果是

<b>hello</b><b>world</b>

但我们不需要这种贪婪型匹配时,需要加载*号,将其变成懒惰型,改成

<[Bb]>.*?</[Bb]>,此时的匹配结果如下:

【匹配结果:2】

(1)<b>hello</b>

(2)<b>world</b>

13.位置匹配

\b 单词边界,如\bcat\b,将在文本中只匹配cat单词

^匹配字符串开头

$匹配字符串结尾

(?m) 表示分行匹配模式,^和$可以匹配每一行的开始和结尾

14.子表达式,子表达式用()括起来即可

15.回溯引用 \1 代表在正则中出现的第一个表达式

16.替换中使用$1表示正则中的第一个表达式、

17.前后查找,?=表示向前查找,只找到对应值,但不出现到匹配结果里; ?<=  表示向后查找

发表评论

电子邮件地址不会被公开。 必填项已用 * 标注

*

您可以使用这些 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>