2016-10-06 2 views
-1

英語の名前を検証することを検討しています。ハイフン、カンマまたはアポストロフィが文字列の最初または最後に来ないようにするには、このRegExをどのように改善できますか?さらに、ハイフンまたはアポストロフィは、常に文字の直前および直後に付ける必要があります。米国と英国の名前の下でRegExを改善する

私はRegEx:[a-zA-Z-', ]を持っています。

私の理解では、すべての文字、すべての場合、ハイフン、コンマ、およびアポストロフィを、文字列内の任意の場所にある空白と共に使用できるようにします。

言語にはまったく新しいので、私の周りに頭を抱えています。

ありがとうございました。それが唯一の推定名前を与えられていますので、

+0

この関数は名前が与えられていることを知っていますか、それは何か他のものであり、それが名前かどうかを判断する必要がありますか? – coladict

+0

名前を期待しています – Jordan

+0

これはなぜ控除されましたか、それは合理的な質問のようですか? – Jordan

答えて

1

[OK]を、ここにあなたがしようとする場合がありますものです:

^[A-Z][A-Za-z'-]+[a-z](,? [A-Z][A-Za-z'-]+[a-z])*$ 

これはO'HarryJefferson-Wayneのような名前で動作しますが、小さな英語の文字で終わらない言葉を拒否します。

この趣旨は、開始、[A-Za-z'-]+続き、[a-z]の最後です。任意のカンマ区切り文字(ただしスペースは必須)を含む、繰り返し可能なオプション名のグループ。

http://www.regexplanet.com/でテストするサンプルを書く時間がかかりました。これは、私が開発しているときに私の正規表現を練習するところです。それを試してみるべきです。

関連する問題