2016-07-04 24 views
0

は、私は現在、このようになります自分のアプリケーション内のフィールドを検証する正規表現を持っています。正規表現文字

  • AAA - 渡し - 正しい

  • aaa.aaa - 渡し - 正しい

  • aaa.aaa-AAA - 渡し - 正しい

  • AAAを-aaa - 失敗 - が間違っています

最後のシナリオをパスするために正規表現を変更する方法を教えてください。

+1

をあなたは、ドットをオプションにする必要があります '^(:(:?。?ワット\ | [ - ])+ \( (?:\ w | [ - ])*)* | \ w *)$ ' –

答えて

1

最初の\.は、最後の式が失敗する原因となります。より多くのグループがあるので、式の最初の部分は一致しなければなりません。

ドットをオプションにすると、式が機能します。

わからないが、多分あなたは、このような表現簡素化することができます。

[A-Za-z]+([\-\.][A-Za-z]+)* 
+1

まだ、アンカーが存在しなければなりません。 –