Javaの正規表現ワードbounderies

Hitrene:

私は次のように、空白とダッシュで二名と一致します正規表現を作成するとします。

Smith-Wright
Smith
Smith Wright

あなただけ入りますしかし、もし-または空白、それが仕事ではないはず。今の私のような正規表現を持っている^[a-zA-Z\s\-]+$、それだけで言葉時計-と空白を。唯一の私の区切りと言葉を一致させる正規表現を作成する方法?

PushpeshクマールRajwanshi:

あなたが一致する名前のようなもののために、この正規表現を使用することができ、

^[a-zA-Z]+(?:[ -][a-zA-Z]+)*$

説明:

  • ^ - 文字列のスタート
  • [a-zA-Z]+ - マッチアルファベット1文字以上の文字からなる名前
  • (?:[ -][a-zA-Z]+)* - さらに、より多く一致する名前の部分は、それがスペースやハイフンが分離されました。
  • $ - 文字列の終わり

正規表現のデモ

おすすめ

転載: http://43.154.161.224:23101/article/api/json?id=187698&siteId=1