为什么方括号内的点与任何字符都不匹配?

时间:2013-02-28 15:30:02

标签: java regex

为什么这个[.]+ Java正则表达式与我的"foo"文本不匹配,而.+完全匹配(已经过测试here)?

1 个答案:

答案 0 :(得分:22)

[.]相当于转义.(点)字符,即\\.

一旦角色出现在character class中,它就会失去作为特殊角色的状态。

由于foo不包含任何点,因此不匹配任何内容。另一方面,.+是一个匹配所有内容的通配符贪婪表达式。