Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Как написать регулярное выражение для поля места рождения? (https://javascript.ru/forum/misc/82699-kak-napisat-regulyarnoe-vyrazhenie-dlya-polya-mesta-rozhdeniya.html)

serg567 15.06.2021 17:54

Как написать регулярное выражение для поля места рождения?
 
Вложений: 2
подскажите пожалуйста есть такие две строки регулярок на JavaScript

const str = /([\ \-\–\'\`\’\.\,])\1/;
const str2 = /(?=[\ \-\–\'\`\’\.\,=]{2})/;


Вложение 4612

но они не работают так как надо для проверки инпута "Место рождения" в форме.

Есть четкое требование к валидация этого поля только - комбинации текста с символами «.» «пробел», «,» «пробел» и «.» «,» «пробел»; должно быть только такое сочетание как на этой картинке - Вложение 4611это как пример что должен быть текст введенный или с точкой и пробелом после текста или с запятой и пробелом или с точкой, запятой и пробелом

voraa 15.06.2021 20:08

А почему не просто последовательность из букв (кириллических ?), цифр и символов пробела, '.', ',' и '-'?

Белый шум 16.06.2021 00:09

serg567,
/^([а-яА-Я]*[а-яА-Я](, |\. |\., )?)+$/.test("г. Жуйск, Динамо, пер., пос. Гидра");

voraa 16.06.2021 07:30

Есть еще такие места рождения, как "Нижний Новгород", "Арзамас-16" ...
Вообще надо понять правила написания. Скорее всего недостаточно писать
"дер. Астапово"
Придется что то вроде
"Московская обл. Луховицкий р-н, дер. Астапово"
И далее понимать, прощаем ли мы случайное написание двух пробелов вместо одного, насколько нужны запятые, что с буквой "ё" .....


Часовой пояс GMT +3, время: 07:43.