我知道有类似的问题,但是最后一个问题只是说明一个单词是否包含单词中的所有元音。我想要做的是找出一个单词的元音是否按字母顺序排列。例如:几乎,各种等等。
我尝试了很多不同的解决方案,但是我无法完成这项工作。
类似的事情:
(a[^eiou]*)?(e[^aiou]*)?(i[^aeou]*)?(o[^aeio]*u)?
和
a[^eiou]*e[^aiou]*i[^aeou]*o[^aeio]*u
但这些不起作用。
答案 0 :(得分:3)
你的第一次尝试并不太远,试试这个:
\b[^aeiou]*(?:a[^eiou]*)?(?:e[^aiou]*)?(?:i[^aeou]*)?(?:o[^aeiu]*)?u?[^aeio]*\b
我补充说:
\b
字边界以确保完整的单词匹配
[^aeiou]*
匹配第一个“a”之前的非元音
(?:o[^aeio]*)?u?
改变了最后一部分以使“o”可选
答案 1 :(得分:0)
\b[^aeiou]*a*[^eiou]*e*[^aiou]*i*[^aeou]o*[^aeiu]*u*[^aeio]*\b
。
答案 2 :(得分:0)
这是我的出价:
^[b-df-hj-np-tv-z]*?(?:a[b-df-hj-np-tv-z]*?)?(?:e[b-df-hj-np-tv-z]*?)?(?:i[b-df-hj-np-tv-z]*?)?(?:o[b-df-hj-np-tv-z]*?)?(?:u[b-df-hj-np-tv-z]*?)?$
也可以通过单词分隔符(\b
)绑定,但似乎pass my testing。