2011-06-22 12 views
0

私は同様の質問があることを知っていますが、最後の質問は単語に母音のすべてが含まれている場合にのみ述べられます。私がしようとしているのは、単語のアルファベット順に母音があるかどうかを見つけることです。たとえば、単語:ほぼ、さまざまな、等すべての母音ではなく正規母音母音?

私はこの仕事には到達できない多くの異なる解決策を試してみました。

のようなもの:

(a[^eiou]*)?(e[^aiou]*)?(i[^aeou]*)?(o[^aeio]*u)? 

a[^eiou]*e[^aiou]*i[^aeou]*o[^aeio]*u 

が、これらは動作しません。

+0

これは宿題の叫び声です。あなたの先生は、すべての習慣を正規表現で行う必要がありますか?またはあなたはそれと一緒に別の言語を使用することはできますか? – Limey

+0

これは宿題ではなく、これは試験の改訂版です。私の先生は私に何も要求しません。私は解決策なしで過去の試験用紙を見ています。私は正規表現にする必要はありません – exclu

答えて

3

あなたの最初の試みはあまりにも遠くはありませんが、これを試してみてください。

\b[^aeiou]*(?:a[^eiou]*)?(?:e[^aiou]*)?(?:i[^aeou]*)?(?:o[^aeiu]*)?u?[^aeio]*\b 

それhere on Regexr参照してください。

私が追加:

\b単語の境界を最初に「」

(?:o[^aeio]*)?u?は、最後の部分aを変更する前に、完全なワードが非母音を一致させるために最初に

[^aeiou]*に一致していることを保証するために、ビットを "o"にするには

+0

@Daniel Vandersluisは固定されていますが、Regexrリンクも更新されます – stema

+0

@stemaリンクは消えているようですが、動作パターンは+1です。 –

+0

は、最初の文字が母音ではないということですか? – exclu

0

どうすれば\b[^aeiou]*a*[^eiou]*e*[^aiou]*i*[^aeou]o*[^aeiu]*u*[^aeio]*\bですか?ここで

+0

はS – exclu

+1

私は、技術的に言えば、それがうまくいかないように母音がないので、すべての母音が順番になっているという制約に違反しないと言います。http://en.wikipedia.org/を参照してください。 wiki/Vacuous_truth – murgatroid99

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に思えることができます。

関連する問題