正则表达式

一、元字符

注意:元字符,一个只能匹配一个

1、  匹配除换行符以外的任意字符

 .  匹配除换行符以外任意字符,而且没有必须带参数,但一个.一次只能匹配一个

2、\w 匹配字目或者数字或者下划线

使用场景:注册邮箱,要求数字字目下划线

注:一个\w一次只能匹配一个

3、\s 匹配任意的空白符

能够匹配出空格、换行、回车

注:一个\s能检测出(大于1个连续的空格,换行、回车),2个\s只能检测出(大于2个连续的空格)

4、\d 匹配数字

注:一个\d一次只能匹配一个

5、\n 匹配一个换行符

注:一个\n一次只能匹配一个

匹配2个换行符

  匹配,有多少个换行行为

  注:不能写\n*,由于*是重0次就开始计算,所以不管是否匹配,只要有一个字符,就算一个换行,要写\n+

6、\t 匹配一个制表符

匹配制表符(Tab) \t

7、 匹配字符串最开始

例子: 匹配每一行的最开头是数字开头

8、 匹配字符串最结尾

注:$值匹配符合要求的最后一行

9、  \W  匹配非字母或者数字或者下划线

10、\D 匹配非数字

11、\S 匹配非空白符

12、a|b 匹配字符a或者b

13、()匹配括号内的表达式,也表示一个组

14、[....] 匹配字符组中的字符

 在表达市中,有abcdefg123456元素的,一次列举

15、[^....] 匹配除字符组中的字符的所有字符

二、量词

1、  *  重复零次或者更多次

注:而且前面必须带参数,是什么重复

2、 +  重复一次或者更多次

注:而且前面必须带参数,是什么重复

3、? 重复零次或者一次

注:而且前面必须带参数,是什么重复

4、{n}  重复n次

注:而且前面必须带参数,是什么重复

5、{n,}  重复n次或者更多次

注:而且前面必须带参数,是什么重复

6、{n,m}  重复n到m次

注:而且前面必须带参数,是什么重复

 区分(*  .    .*    +  ):

*   重复零次或者更多次,而且前面必须带参数,是什么重复

例子:直接打*,无任何查询,因为前面必须带参数

z

例子:\d是匹配数字,\d*是匹配多个数字,为什么是重复零次或者更多次,这个零次,在无任何匹配上的时候,也输出,输出为空

 +  重复一次或者更多次,而且前面必须带参数,是什么重复

例子:直接打+,无任何查询,因为前面必须带参数

例子:\d是匹配数字,\d+是匹配多个数字,但是必须有数字开头,才能算。所以那些没有数字开头的,都不能匹配

.*  一个.一次只能匹配一个,加上*多个的意思,就是匹配全部

三、贪婪匹配和惰性匹配

1、.*   贪婪匹配

.  匹配除换行符以外的任意字符,*  重复零次或者更多次

说明什么意思:尽可能多的匹配,玩儿....游戏中间有三种可能,尽可能多匹配,选最多的就是如下

2、.* ?  惰性匹配

什么意思:尽可能少的匹配,玩儿....游戏中间有三种可能,尽可能少匹配,选最少的就是如下

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值