所以,我正在寻找一个正则表达式,它能够匹配字符串中每个最大非空辅音子串后跟一个最大非空元音子串
例如在以下字符串中,您可以看到所有预期的匹配项:
"zcdbadaerfe" = {"zcdba", "dae", "rfe"}
"foubsyudba" = {"fou", "bsyu", "dba"}
我很亲近!这是我到目前为止想出的正则表达式:
([^aeiou].*?[aeiou])+
它返回预期的匹配,除了它只返回任何重复长度的元音中的第一个,例如:
String: "cccaaabbee"
Expected Matches: {"cccaaa", "bbee"}
Actual Matches: {"ccca", "bbe"}
我想弄清楚如何在 (a) 常量或 (b) 字符串结尾之前包含最后找到的元音字符。
谢谢! :-)
最佳答案
您的图案略有偏差。我建议使用这个版本:
[b-df-hj-np-tv-z]+[aeiou]+
这个模式表示匹配:
[b-df-hj-np-tv-z]+
一个小写非元音字母,一次或多次[aeiou]+
后跟小写元音,一次或多次
这是一个有效的 demo .
关于正则表达式:重复字符的最后一次出现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/73994104/