使用一组字母与一个实例匹配单词

时间:2018-02-24 14:15:44

标签: regex

如果这个问题考虑到我应该怎么做,我正在玩一些文字游戏,我希望用5个字母匹配一组字典单词中的单词我试过这样的事情

\b[clagey]{5}\b
它是好的,但它匹配像“鹰”这样的词。问题是我想要在每个字母c,l,a,g,e,y上使用单个实例而不是带有双e的“老鹰”。

1 个答案:

答案 0 :(得分:4)

试试这个正则表达式:

\b(?:([clagey])(?!\S*\1)){5}\b

<强> Click for Demo

<强>解释

  • \b - 字边界
  • ([clagey]) - 匹配其中一个字符 - clagey并在第1组中捕获它
  • (?!\S*\1) - 负向前瞻也要确保在下一个空格出现之前不会重复第1组中捕获的内容
  • {5} - 匹配5次
  • \b - 字边界