2013-04-04 4 views
0

Я пытаюсь найти правильное регулярное выражение, которое будет соответствовать только первому имени.Javascript - Регулярное выражение для имени

Первое письмо должно быть заглавной буквой, за которой следует хотя бы одна строчная буква.

Я пробовал (!fname.match(/^[A-Z]{1,}\[a-z]{1,}$/)), но это не работает.

Я ценю помощь!

имена, которые соответствуют: "Jack" "Ли" "Ку"

+0

Итак, вы определяете первое имя как * "последовательность символов, начинающуюся с заглавной буквы, за которой следует переменное число строчных букв" *? Если нет, то вам нужно дать еще несколько объяснений. –

+0

Вы вряд ли получите это право. Рассмотрим, например, имена «Хосе» и «Лавон». –

+2

Вы прокомментировали теперь удаленный ответ * «Это не работает: \" *. Для какого выражения это не работает? Мы не можем вам помочь, если мы не знаем, что случилось. Вы получите лучшую помощь, чтобы дать нам как можно больше (релевантной) информации. –

ответ

0

Вот простой способ:

/^[A-Z][a-z]+$/.test("Jack"); 

Технически набор [A-Z] спичек один заглавной буквы, в то время как [a-z]+ соответствует один или несколько маленькая буква (буквы) после столицы. Обратите внимание, что следующее выражение не будет соответствовать таким именам, как "José" и "LaVaughn", как было упомянуто в @Michael Geary в комментариях.

+0

Как насчет '/^[A-Z] [a-z] + $ /. Test (" José ");' или '/^[A-Z] [a-z] + $ /. Test (" LaVaughn ");'? Oops ... :-) –

+0

Это не работает: \ – mozyak

+0

@MichaelGeary JavaScript не любит Unicode в регулярных выражениях. Правда. – VisioN

Смежные вопросы