正则表达式中`[.]`和`.`的区别

5
以下两个表达式不同:/[.]*//.*/。为什么会这样,它们有什么具体的区别?在正则表达式中,[] 和特殊字符之间的相互作用是什么?
谢谢。

3
顺便说一下,转义特殊字符的“正确”方式是使用反斜杠,因此/[.]*/应为/\/*.*/ - Matthew Crumley
2个回答

14

点号 . 通常是通配符,可以匹配任何字符。然而,在字符类(方括号 [])中,它被视为字面量,并仅匹配一个点号。


4
更精确地说,.通常匹配除换行符以外的任何字符。 - Tim Pietzcker

8
  • .* 字面意思是“匹配零个或多个任何字符”,其中的.充当通配符。
  • [.]* 字面意思是“匹配零个或多个点.字符”,其中方括号[]中的.被匹配为字面值。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接