RegEx-三个正则表达式之间的差异似乎做同样的事情

时间:2014-04-10 15:22:02

标签: java regex

这些正则表达式之间的确切区别是什么?

第一:

\\b(\\w+) \\1\\b

第二

\\b(\\w+)\\1\\b

第三

\\b(\\w+) \\1

1 个答案:

答案 0 :(得分:1)

  1. \\b(\\w+) \\1\\b再次匹配一个单词,一个空格和相同的单词,两侧是单词边界。例如,它会匹配“a a”中的“a a”,但不匹配“aa”,“aab”或“a ab”中的任何内容。

  2. \\b(\\w+)\\1\\b匹配一个单词,并再次使用相同的单词,两侧是单词边界。例如,它在“aa”中匹配“aa”,但在“aab”或“a a”中不匹配任何内容。

  3. \\b(\\w+) \\1再次匹配单词,空格和相同的单词,但在开始时只需要单词边界。例如,它会匹配“a ab”中的“a a”,但“aa”或“aab”中没有任何内容