регулярное выражение - имя и фамилия javaScript

0

Я пытаюсь создать регулярное выражение JavaScript, например, использование facebook для настоящих имен:

  • Имена не включают:
  • Символы
  • чисел
  • необычная капитализация
  • повторяющиеся символы или знаки препинания

источник: Справочный центр Facebook
Вот мое регулярное выражение:

 /^[a-z \,\.\'\-]+$/i

Проблема с этим регулярным выражением заключается в том, что он не проверяет повторяющиеся символы или знаки препинания:
то я нашел это:

/(.)\1/

поэтому я теперь проверяю это так:

$('input [type=text]).keyup(function(){
var name = $(this).val();
var myregex = /^[a-z\,\.\'\-]+$/i
var duplicate =  /(.)\1/
if(name != myregex.exec(name) ||  name == /(.)\1/)
{// the name entered is wrong
}
else
//the name is ok

но проблема, с которой я столкнулся, связана с такими входами, как:

  • Мур
  • Калли
  • Мэгги

что я могу сделать, чтобы решить проблему?

  • 3
    "Что я могу сделать, чтобы решить проблему?" Прекратите пытаться решить это. Имена как очень сложные, так и очень личные. Вы гораздо лучше проводите опросы данных и отбираете очевидную чушь, чем действительно злитесь на людей, отказываясь уважать их имя. Ваше регулярное выражение не запрещает это, но я натолкнулся на десятки сайтов, которые не могут использовать в качестве имени "TJ". И при всем уважении к людям, стоящим за этими сайтами, это чистая BS. Мое имя зависит от меня , а не от них. Рекомендую вам избежать причинения подобного преступления.
  • 3
    Что делать, если меня зовут Børre Ørevål или عبد الله или 汉 / 漢
Показать ещё 11 комментариев
Теги:
facebook

1 ответ

0
Лучший ответ

Вы должны перестать пытаться решить эту проблему:

  • Это очень сложно
  • Имена очень личные

Например, ваша система никогда не сможет подтвердить имена из Китая или Японии... (Например: Børre Ørevål, 汉/漢)

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

Связано: Регулярное выражение для проверки имен и фамилий?

Ещё вопросы

Сообщество Overcoder
Наверх
Меню