Regex in java for finding duplicate consecutive words

后端 未结 6 1870
时光说笑
时光说笑 2020-12-14 19:26

I saw this as an answer for finding repeated words in a string. But when I use it, it thinks This and is are the same and deletes the is

6条回答
  •  心在旅途
    2020-12-14 19:51

    The below pattern will match duplicate words even with any number of occurrences.

    Pattern.compile("\\b(\\w+)(\\b\\W+\\b\\1\\b)*", Pattern.MULTILINE+Pattern.CASE_INSENSITIVE); 
    

    For e-g, "This is is my my my pal pal pal pal pal pal pal pal" will output "This is my pal"

    Also, Only one iteration with "while (m.find())" is enough with this pattern.

提交回复
热议问题