我编写了一个程序,该程序可以查找和计算德语和西班牙语文本中的初始辅音簇。我想要一个能在最终位置上找到簇的正则表达式。使用\ b或$不起作用。有人可以帮我确定如何更改我的正则表达式,以便它可以用于最终的辅音词组吗?
我目前在初始聚类中有这样的东西:
for w in words:
initial = re.search('^([^aeiouy]*)[aeiouy]',w)
或者像这样:
initial = re.search('^[^aeiouy]{2,}',w)
答案 0 :(得分:0)
您似乎想在字符串末尾提取2个或更多辅音字母的块。
您可以使用
(?:(?![aeiou])[a-z]){2,}$
请参见regex demo。
详细信息
(?:
-一个非捕获组的开始:
(?![aeiou])
-如果下一个字符是元音,则负匹配将使匹配失败。[a-z]
-ASCII字母(可以使用re.I
标志设置不区分大小写的模式)){2,}
-组结束,出现2次以上$
-字符串的结尾。