正则表达式*
和表达式.*
之间有什么区别*
的含义是 - 任何出现任意次数的字符,以及{{1}的含义}是任何出现零次或多次的字符。两者基本上都是一样的。有人可以解释一下这个区别吗?
答案 0 :(得分:13)
不,*
是量词,用于修改正则表达式中上一个字符,组或字符类的含义。它本身就没有意义。只有当它与正则表达式中的内容相结合时,它才具有意义。
因此,.*
表示任何字符出现0次或更多次,a*
表示a
出现0次或更多次,依此类推。
答案 1 :(得分:1)
在正则表达式中*
本身并不意味着什么。它修改前面的表达式。可能与通配符混淆,其中*
与正则表达式中的.*
表示相同。在正则表达式中*
本身或作为表达式中的第一个字符是非法的。
答案 2 :(得分:1)
X*
的含义是:“X,零次或多次”(见here)。 *
只是量词。
答案 3 :(得分:1)
.
表示任何角色。 *
表示前一个字符(或组)0次或更多次。所以.*
表示任何字符0次或更多次。就是这样
答案 4 :(得分:0)
ab*de
将匹配ade
,abde
,abbde
,abbbde
,abbbbde
等。
ab.*de
将匹配ade
以外的所有内容。