python - 列出德语单词最后的辅音簇

标签 python regex cluster-computing final

我编写了一个程序,可以查找并计算德语和西类牙语文本中的首辅音簇。我想要一个能够在最终位置找到簇的正则表达式。使用\b 或 $ 不起作用。有人可以帮助我确定如何更改我的正则表达式,以便它适用于最终辅音簇吗?

我目前对于初始集群有这样的东西:

for w in words:
    initial = re.search('^([^aeiouy]*)[aeiouy]',w)

或者像这样:

 initial = re.search('^[^aeiouy]{2,}',w)

最佳答案

您似乎想要在字符串末尾提取 2 个或更多辅音字母的 block 。

您可以使用

(?:(?![aeiou])[a-z]){2,}$

请参阅regex demo .

详细信息

  • (?: - 非捕获组的开始:
    • (?![aeiou]) - 如果下一个字符是元音,则匹配失败的负向预测
    • [a-z] - ASCII 字母(可以使用 re.I 标志设置不区分大小写模式)
  • ){2,} - 组末尾,出现 2 次或以上
  • $ - 字符串结尾。

关于python - 列出德语单词最后的辅音簇,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55070540/

相关文章:

python - 在 Python 中编写这个十六进制格式化函数的不太糟糕的方法是什么?

javascript - 如何将变量值包含到正则表达式模式中?

java - Hazelcast HTTP session 复制不复制任何内容

migration - 如何确保 Hazelcast 迁移完成

python - 遍历 numpy.ma 数组,忽略屏蔽值

python - 从 pandas 段中获取值并就地减去

python - 如何使用python将图像插入特定的excel文件单元格?

正则表达式操作 JavaScript 字符串

regex - vim 正则表达式仅用一个空格替换多个连续空格

java - 使用集群中的一个节点访问marklogic很慢