正则理解

来源:互联网 发布:云电视直播软件下载 编辑:程序博客网 时间:2024/05/01 21:55
元字符:

/b:代表着单词的开头或结尾,也就是单词的分界处。虽然通常英文的单词是由空格,标点符号或者换行来分隔的,但是/b并不匹配这些单词分隔字符中的任何一个,它只匹配一个位置。

/d:元字符,数字占位符,匹配一位数字,表达式:0/d{2}-/d{8}。 这里/d后面的{2}({8})的意思是前面/d必须连续重复匹配2次(8次)。,表示以0开头后面跟两个任意数字,后面是-再跟八个任意数字。

/s:匹配任意的空白符,包括空格,制表符(Tab),换行符,中文全角空格等。

/w:匹配字母或数字或下划线或汉字等。比/b的约束小。
.:匹配除换行符以外的任意字符,比/w要求更加宽松。

^:匹配字符串的开始。

$:匹配字符串的结束。这个应用跟/b非常类似,但是/b表示的是单词的开始和结束,而^,$通常是用于一个字符串,类似于手机号必须是11位数字,则^/d{11}$.

 

转义字符:

/:转义字符。

 

重复字符:

*:连在一起就意味着任意数量的不包含换行的字符。/bhi/b.*/bLucy/b的意思就是:先是一个单词hi,然后是任意个任意字符(但不能是换行),最后是Lucy这个单词,写在要重复的字符或数字或其他东西的后面。。
+:是和*类似的元字符,不同的是*匹配重复任意次(可能是0次),而+则匹配重复1次或更多次,写在要重复的字符或数字或其他东西的后面。。

?: 重复零次或一次,写在要重复的字符或数字或其他东西的后面。
{n}: 重复n次写在要重复的字符或数字或其他东西的后面。
{n,}: 重复n次或更多次写在要重复的字符或数字或其他东西的后面。
{n,m}: 重复n到m次写在要重复的字符或数字或其他东西的后面。

 

 

反义字符:

/W 匹配任意不是字母,数字,下划线,汉字的字符
/S 匹配任意不是空白符的字符
/D 匹配任意非数字的字符
/B 匹配不是单词开头或结束的位置
[^x] 匹配除了x以外的任意字符
[^aeiou] 匹配除了aeiou这几个字母以外的任意字符

 

 

分组字符:
用()表示:例如:(/d{1,3}/.){3}/d{1,3}表示前面一个三位数后跟一个点,用()括起来表示一组,这一组重复3遍,后再跟一个三位数字。

 

 

原创粉丝点击