必要に応じて、単一のスペースで区切られた文字のみを含む名前のパターンを作成するにはどうすればよいですか? 複数の名前がある場合は、1 つのスペースで区切る必要があります。
たとえば、
"Jane Doe"
and"Jane"
は正しいが、" Jane"
or"Jane "
または or"Jane Doe"
はすべて正しくありません。
私のパターン、
/^([A-za-z]+ ?[A-za-z]+){1}$/
必要に応じて、単一のスペースで区切られた文字のみを含む名前のパターンを作成するにはどうすればよいですか? 複数の名前がある場合は、1 つのスペースで区切る必要があります。
たとえば、
"Jane Doe"
and"Jane"
は正しいが、" Jane"
or"Jane "
または or"Jane Doe"
はすべて正しくありません。
私のパターン、
/^([A-za-z]+ ?[A-za-z]+){1}$/
私があなたを正しく理解しているなら、これを試してください:
/^[A-Za-z]+(\s[A-Za-z]+)?$/
正規表現が大文字の範囲全体をチェックしていません (Az は AZ でなければなりません)
注: これは、質問にタイプミスが含まれており、実際には " Jane Doe" または "Jane Doe " が正しくないことを前提としています。
var patt=new RegExp(/^([A-Za-z]+ ?[A-Za-z]+){1}$/);
document.write(patt.test(" Jane Doe") + '<br/>'); --false
document.write(patt.test("Jane Doe") + '<br/>'); --true
document.write(patt.test(" Jane") + '<br/>'); -- false
document.write(patt.test("Doe ") + '<br/>'); -- false
document.write(patt.test("Doe") + '<br/>'); -- true
フィドルを参照してください: http://jsfiddle.net/FEycT/4/