【问题标题】: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] 匹配英文字母,但不包括 aeiou
    • (?:(?![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
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2020-09-16
          • 1970-01-01
          • 1970-01-01
          • 2017-01-18
          • 1970-01-01
          • 2013-03-17
          • 1970-01-01
          • 2023-03-25
          相关资源
          最近更新 更多