我想找到带有正则表达式的consonant clusters。群集的一个示例是 示例 中的 mpl 。
首先,我过滤掉所有元音并用空格替换它们。过滤掉元音后, 示例 为 x mpl s 。
如何过滤掉 x 和 s ?
答案 0 :(得分:1)
好像你想要这样的东西,
(?:(?![aeiou])[a-z]){2,}
(?![aeiou])[a-z]
表示从小写字母表中选择任何字符,但不能选择a
或e
或i
或o
或u
(?![aeiou])[a-z]
匹配小写的合作伙伴
(?:(?![aeiou])[a-z]){2,}
两次或更多次。
答案 1 :(得分:1)
由于你的“辅音群”的工作定义是连续两个或两个以上的辅音,你可以简单地使用以下模式(如果你想处理资本辅音,则不区分大小写):
[bcdfghjklmnpqrstvwxyz]{2,}
[bcdfghjklmnpqrstvwxyz]
- 辅音的简单白名单字符(即只能与辅音匹配){2,}
- 连续两次或更多次您可以针对related regex fiddle中的几个输入字符串测试模式。
注意由于元音是“ a , e , i , o , u 和有时 y “,我已将y
包含在上述辅音的白名单字符类中。
您可以放弃y
并使用...
[bcdfghjklmnpqrstvwxz]{2,}
...如果您想无条件地将 y 视为元音而不是辅音;但rules for when y is a consonant比简单的正则表达式要复杂得多(基本上要求你首先识别音节,然后 y 的位置)。
答案 2 :(得分:0)