【问题标题】:Regex: Find duplicated phrases正则表达式:查找重复的短语
【发布时间】:2017-08-18 05:51:11
【问题描述】:

有时,我有时会发现整个短语在我的文本中重复出现。

The reason the reason why they cleaned....

\b(\w+)\s+\1\b找到重复的单词,但不是短语。

【问题讨论】:

  • 在\w+ 之后添加(?:\s+\w+)* 并使用不区分大小写的修饰符。见this demo。
  • \w+ 是为了文字。您需要编写正确的正则表达式来匹配您感兴趣的句子
  • 重复在哪里?相邻还是不连续? The reason, the reason 呢?这不仅仅是一个同质的前提。不妨做点什么真实世界..
  • 停产可能会更复杂,以使其正确。目前,continues 对我来说已经足够了。
  • discontinues could be more complex to get it right. 也许不是,如果它们相邻,您需要做的就是在标点符号的子句中添加 <here>\1\b 但标点符号可以显着改变语言的含义。很高兴意识到您没有找到重复项短语根本,因为正则表达式不能解析语言..那是不可能的..

标签: regex


【解决方案1】:

你可以使用正则表达式

(w+(?:s*w*))s+

查看演示here

【讨论】:

  • @WiktorStribiżew 在上面的 cmets 部分中的回答的很好的副本!
  • 他的正则表达式无法匹配关键字,例如“the check”
猜你喜欢
  • 1970-01-01
  • 2023-01-26
  • 1970-01-01
  • 2018-10-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多