首页 > 技术文章 > 学习正则笔记

x-x-j 2017-08-07 15:21 原文

1、行定位符(^和$)

作用:用来描述字符串的边界;^表示字符串的开始,$表示字符串的结束,“^abc”表示以abc开头,“xyz$”表示以xyz结束;

2、单词定界符(\b和\B)

如an是否在一个串字符串“boy and girl”中存在,很明显,如果匹配的话,an肯定可以匹配到字符串“boy and girl”,但是怎么样才能让其匹配到一个单词,而不是单词的一部分呢?这个时候我们就可以使用单词定界符\b,“\ban\b”去匹配“boy and girl”的话就会提示匹配不到,而\B这是正好相反,他匹配的字符串不能是一个完整的单词,而是单词或是字符串中的一部分;

3、选择字符(|表示或)

如Aa|aA表示Aa或aA,注意 [ ] 和 | 的区别;“[]”只能匹配单个字符,而“|”可以匹配任意长度的字符串,在使用“[]”时通常和连接符“-”一起使用,如“[1-3]”表示1或2或3。

4、排除字符,排除操作

正则表达使用"^"来表示排除不符合的字符,^一般放在[]中,如[^6-9]表示排除6到9之间的数字;

5、限定符(?*+{n,m})

限定符主要是用来限定每个字符出现的次数;

?=>0或1次;

*=>0或多次;

+=>1次或多次;

{n}=>n次;

{n,}=>至少n次;

{n,m}=>n到m此;

如(A+)表示一个或多个A;

6、点号操作符

表示匹配任意字符(除了含换行符);

7、有关表达式中的反斜杠\

表达式中的反斜杠有多种意思,如转移、指定预定义的字符集、定义断言、显示不打印的字符;

7.1、转移字符

转移字符主要是将一些特殊字符转成普通字符;常用的特殊字符有“.”、“?”、“\”等;

7.2、指定预定义的字符集

\d 表示任意一个十进制的数字[0-9];

\D 表示任意个一个非十进制的数字;

\s 表示任意一个空白字符(空格,换行符,换页符,回车符,制表符);

\S 表示任意一个非空白符;

\w 表示任意一个单词符;

\W 表示任意一个非单词符;

7.3、显示不可打印的字符

\a 报警;\b 退格;\f  换页;\n 换行;\r 回车;\t 制表符;

8、括号字符

在正则表达时中,小括号的作用主要有:

a:改变限定符(|、*、^)的作用范围;

b:进行分组,便于反向引用;

(和我们主观意识的括号表示的意思差不多)

9、反向引用

反向引用,就是依靠字表达的“记忆”功能,匹配连续出现的字符或字符串;如(dqs)(pps)\1\2,表示匹配字符串dqsppsdqspps(PS:这里我也不是很懂)。

10、模式修饰符

模式修饰符的作用是修饰模式,也就是正则表达式如何解释。

i=>忽略大小写;m=>多文本模式;s=>单行文本模式;x=>忽略空白字符

 

本文属于个人原创!

欢迎转载,转载请附连接: http://www.cnblogs.com/x-x-j/p/7299317.html

 

推荐阅读