正则1

标准字符集合:

能够与'多种字符'匹配的表达式

注意区分大小写,大写是相反的意思

\d :任意一个数字,0~9中的任意一个

\D:,0~9以外的全部

\w:任意一个字母或数字或下划线,就是说A~Z,a~z,0~9,_  中任意一个

\W:任意一个字母或数字或下划线,就是说A~Z,a~z,0~9,_以外的全部

\s:包括空格、制表符、换行符等空白字符的其中任意一个

\S:空格、制表符、换行符等空白字符以外的全部

.:小数点可以匹配任意一个字符(除了换行符)如果要匹配包括"\n"在内的所有字符,一般用[\s\S]

自定义字符集合: ^表示取反

[]方括号匹配方式,能够匹配方括号中任意一个字符

[ab23] :  匹配"a"或"b"或"2"或"3"

[^ab23] : 匹配"a""b""2""3"之外的任意一个字符

[a-z] :     匹配"a"~"z"之间的任意一个字母

[^A-Z0-9] :匹配"A"~"Z","0"~"9"之外的任意一个字符

注意!!!!:正则表达式的特殊符号,被包含在[ ]里面时,会失去特殊意义,除了^ - 之外

标准字符集合,除小数点外,如果被包含于[ ],自定义字符集合将包含该集合。比如

[\d.\+-]将匹配到 数字、小数点→.、+、-

 

量词:

修饰匹配次数的特殊符号

{n} 表达式重复n次:\d{5}                 1 2 3  45 67891  匹配到67891

{m,n} 表达式重复m-n次: \d{2,5}                 1 2 3  456 78910    匹配到456 78910

{m,}表达式至少重复m次:  \d{3,}                     1 2 3  456 78910   匹配到78910

一般都是贪婪模式:匹配的越多越好

非贪婪模式(匹配字符越少越好修饰匹配次数的特殊符号后再加上一个"?"号):刚好够数那么就重新计算比如:

\d{3,5}?               1 2 3  456 789101   匹配456 789重新匹配101

?用法:

?匹配表达式0次或者1次相当于{0,1}

a\d?b                ab  a1b  a2b  a12b a12345b  匹配到ab  a1b  a2b 

↑式等同于→  a\d{0,1}b

+用法:

至少出现一次,相当于{1,}

a\d+b                 ab  a1b a2b  a12b a12345b  匹配到a1b a2b  a12b a12345b

↑式等同于→a\d{1,}b

*用法:

表达式不出现或出现任意次,相当于{0,}

a\d*b                ab  a1b a2b  a12b a12345b  匹配到ab  a1b a2b  a12b a12345b

↑式等同于→a\d{0,}b

 

^b: ^配合字母/数字表示文本 第一个开头的字母且要和文本第一个字符一致(与字符串开始的地方匹配)

bi love u1   匹配 b

b$:$配合字母/数字表示文本 最后一个开头的字母且要和文本最后一个字符一致(与字符串结束的地方匹配)

bab  a1b a2b  a12b a12345b            匹配a12345b 中的b

\b:配合字母/数字表示左/右不全是他表示的字符(前面的字符和后面的字符不全是\w)比如

a12\b                             bab  a1b a2b  a12b a12345b   bbbbba12  aa12           匹配  bbbbba12  aa12  中的a12

\ba12                              bab  a1b a2b  a12b a12345b   bbbbba12  aa12          匹配  a12b a12345b 中的b12

   选择符和分组

|                  作用:左右两边表达式之间"或"关系,匹配左边或者右边

()                 1、再被修饰匹配次数的时候,括号中的表达式可以作为整体被修饰

                    2、去匹配结果的时候,括号中的表达式匹配到的内容可以被单独得到

                    3、每一对括号会分配一个编号,使用()的捕获根据左括号的顺序从1开始自动编号。捕获元素编号为零的第一个捕获是由整个正则表达式模式匹配的文本

[a-z]{6}                           i love lovors  ^ ^ ^ 1 2 3  456 789101-- 匹配其中的 lovors

\nnn反向引用

每一对()都会分配一个编号,使用()的捕获根据左括号的顺序从1开始自动编号。通过反向引用,可以对分组已捕获的字符串进行引用

([a-z]{2})\1                      doto dodo toto wewe wedo                  匹配dodo toto wewe(也就是说在同样的2个字母后面还需要跟同样的两个字母)

()()()\1  指第一个括号 ()()()\2指第二个括号 ()()()\3指第三个括号

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值