如果这个问题考虑到我应该怎么做,我正在玩一些文字游戏,我希望用5个字母匹配一组字典单词中的单词我试过这样的事情
\b[clagey]{5}\b
它是好的,但它匹配像“鹰”这样的词。问题是我想要在每个字母c,l,a,g,e,y上使用单个实例而不是带有双e的“老鹰”。
答案 0 :(得分:4)
试试这个正则表达式:
\b(?:([clagey])(?!\S*\1)){5}\b
<强> Click for Demo 强>
<强>解释强>
\b
- 字边界([clagey])
- 匹配其中一个字符 - c
,l
,a
,g
,e
,y
并在第1组中捕获它(?!\S*\1)
- 负向前瞻也要确保在下一个空格出现之前不会重复第1组中捕获的内容{5}
- 匹配5次\b
- 字边界