为了账号安全,请及时绑定邮箱和手机立即绑定

正则表达式 .*? 是什么意思啊?

/ 猿问

正则表达式 .*? 是什么意思啊?

紫衣仙女 2019-01-30 11:07:11

正则表达式 .*? 是什么意思啊?


查看完整描述

2 回答

?
牛魔王的故事

.* 很简单,就是一个字符循环0次或者很多次
多一个?在后面,意思是 懒惰循环
举一个例子你就明白了
对于字符串 aaaaaaa
a* 一下子很勤劳的把整个字符串都匹配完了,结果是
aaaaaaa

a*? 很懒,发现匹配字符串中一个a后,就完成了匹配,就不用再继续尝试下去了,因此就第一次只匹配
a,然后进行第二轮匹配了,还是只吃一个a就结束。因为他懒嘛



查看完整回答
反对 回复 2019-03-02
?
POPMUISE

表达式 .* 就是单个字符匹配任意次,即贪婪匹配。 表达式 .*? 是满足条件的情况只匹配一次,即最小匹配.

举例介绍:

如:<img src="test.jpg" width="60px" height="80px"/>

懒惰模式正则:

src=".*?"

结果:src="test.jpg"

扩展资料

正则表达式特殊字符及其含义:

1、\cx    

匹配由x指明的控制字符。例如, \cM 匹配一个 Control-M 或回车符。x 的值必须为 A-Z 或 a-z 之一。否则,将 c 视为一个原义的 ‘c’ 字符。    

2、\f    

匹配一个换页符。等价于 \x0c 和 \cL。    

3、\n  

匹配一个换行符。等价于 \x0a 和 \cJ。    

4、\r    

匹配一个回车符。等价于 \x0d 和 \cM。    

5、\s    

匹配任何空白字符,包括空格、制表符、换页符等等。等价于 [ \f\n\r\t\v]。    

6、\S    

匹配任何非空白字符。等价于 [^ \f\n\r\t\v]。    

7、\t    

匹配一个制表符。等价于 \x09 和 \cI。    

8、\v    

匹配一个垂直制表符。等价于 \x0b 和 \cK。    



查看完整回答
反对 回复 2019-03-02

添加回答

回复

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信