【问题标题】:Regex to find the words in the text which have four consonants in a row? [closed]正则表达式查找文本中连续四个辅音的单词? [关闭]
【发布时间】:2021-03-02 00:55:21
【问题描述】:
我在 Vim 中学习正则表达式,并希望找到并尝试解决元音和辅音问题。这些词的正则表达式是什么?
【问题讨论】:
标签:
regex
computation-theory
【解决方案1】:
连续4个辅音,你可以试试这个正则表达式
(?:(?![aeiou])[a-z]){4}
-
[a-z] 匹配英文字母
-
(?![aeiou])[a-z] 匹配英文字母,但不包括 a、e、i、o 和 u
-
(?:(?![aeiou])[a-z]){4} 对于上面这样的字母,必须连续 4 个
您可能会看到匹配结果here
如果你想匹配除了这四个辅音之外的整个单词,你可以试试
\b(?=[a-z]*(?:(?![aeiou])[a-z]){4})[a-z]*\b
查看结果here
【解决方案2】:
我建议把辅音拼出来,而不是把所有的字母都写出来,然后通过正则表达式圈来排除元音。
[b-df-hj-np-tv-z]{4}
【解决方案3】:
试试这个:
(?i)\b[a-z]*[b-z&&[^eiou]]{4}[a-z]*\b