2017-05-18 45 views
2

如何阻止連續元音在字符串中的使用並允許使用只有一個連字符( - )?現在它允許用戶輸入儘可能多的連字符。它不應該允許連字符以外的任何其他特殊字符。如何阻止字符串中的連續元音(aeiou)?

我已經使用/^((?!aeiou)[a-zA-z\u00BF-\u1FFF\u2C00-\uD7FF\-])*$/,。它不應該允許連續的元音,即使它是大寫(AEIOU),也不應該像AeiOU,aEIou等連續形式的大寫和小寫。只有連續的元音被限制,所以'aouie'和'iouae'被刪除。

+0

你的代碼是允許多於一個連字符也當我在這些(AEIOU,AEIOU,AEIOU)形成它正在接受進入連續元音。 – Kumar

回答

4

嘗試使用:

/^(?!.*-.*-)((?![Aa][Ee][Ii][Oo][Uu])[a-zA-Z\u00BF-\u1FFF\u2C00-\uD7FF\-])*$/ 

(?!.*-.*-)指開始的字符串不能被隨後以任何位置2個hypens。

https://regex101.com/r/vrpqv9/1

+0

這是完美的,我認爲第一個也只是一個小小的修改,但第二個是現貨。謝謝 – Kumar

+0

@Kumar您可以考慮upvote和/或接受答案 – horcrux

+1

一旦用戶獲得15個重要點,就會授予Upvoting權限。 –

相關問題