您当前的位置:首页 > 互联网教程

正则表达式里面 .# 和 .# 有什么区别

发布时间:2025-05-24 05:05:21    发布人:远客网络

正则表达式里面 .# 和 .# 有什么区别

一、正则表达式里面 .* 和 .* 有什么区别

1、表达式.*就是单个字符匹配任意次,即贪婪匹配。

2、表达式.*?是满足条件的情况只匹配一次,即最小匹配.

3、\s匹配任何空白非打印字符,包括空格、制表符、换页符等等。等价于 [ \f\n\r\t\v]。注意 Unicode正则表达式会匹配全角空格符。

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

5、*限定符是贪婪的,因为它们会尽可能多的匹配文字,只有在它们的后面加上一个?就可以实现非贪婪或最小匹配。

6、比如:<H1>Chapter 1-介绍正则表达式</H1>

7、使用/<.*>/匹配的结果为:H1>Chapter 1-介绍正则表达式</H1。

8、使用/<.*?>/匹配结果为:H1。

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

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

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

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

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

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

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

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

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

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

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

三、正则表达式中的 .* 或 .*+ 是什么意思

1、一、*表示匹配前面的字符0个或多个

2、三、?表示放在其他字符后面表示前面的字符可以有,也可以没有,或者放在*、+后面表示匹配尽可能少的字符

3、例如:字符串fooooo,正则fo*和fo+会匹配整个字符串,

4、四、*+没有这样的用法,除非是匹配星号本身,即: \*+表示一个或多个星号

5、将下一个字符标记符、或一个向后引用、或一个八进制转义符。例如,“\\n”匹配\n。“\n”匹配换行符。序列“\\”匹配“\”而“\(”则匹配“(”。即相当于多种编程语言中都有的“转义字符”的概念。

6、匹配输入字行首。如果设置了RegExp对象的Multiline属性,^也匹配“\n”或“\r”之后的位置。

7、匹配输入行尾。如果设置了RegExp对象的Multiline属性,$也匹配“\n”或“\r”之前的位置。

8、参考资料来源:百度百科-正则表达式