Как составить регулярное выражение для проверки имени и фамилии? На сайте необходимо реализовать проверку имени и фамилии пользователя. Читал, что сильно ограничивать этот ввод - идея плохая. Как составить выражение, которое будет пропускать буквы различных языков (хотя-бы русские, английские, китайские и японские иероглифы), но не будет пропускать цифры, эмодзи и различный спецсимволы (по типу %, ^, / и т.д.)? Я так понял, такое есть например у VK, я не видел там имен со спецсимволами или цифрами.

3 Фев 2023 в 19:52
129 +1
1
Ответы
1

Для проверки имени и фамилии пользователя можно использовать следующее регулярное выражение:

^[\p{L}\p{M}]{1,}$

Это выражение позволит пропускать только буквы различных языков, такие как русские, английские, китайские и японские иероглифы, а также диакритические знаки (\p{M}). В данном случае оно позволит использовать только буквы в верхнем и нижнем регистрах в имени и фамилии пользователя.

Пример использования в JavaScript:

const regex = /^[\p{L}\p{M}]{1,}$/u;
const name = "Иван";
if (regex.test(name)) {
console.log("Имя корректное");
} else {
console.log("Имя содержит недопустимые символы");
}

Это регулярное выражение не позволит использовать цифры, эмодзи и различные спецсимволы в имени и фамилии пользователя, так как они не попадают под категорию букв (\p{L}) или диакритических знаков (\p{M}).

16 Апр в 16:43
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Название заказа не должно быть пустым
Введите email
Бесплатные доработки
Гарантированные бесплатные доработки
Быстрое выполнение
Быстрое выполнение от 2 часов
Проверка работы
Проверка работы на плагиат
Интересные статьи из справочника
Поможем написать учебную работу
Название заказа не должно быть пустым
Введите email
Доверьте свою работу экспертам
Разместите заказ
Наша система отправит ваш заказ на оценку 92 648 авторам
Первые отклики появятся уже в течение 10 минут
Прямой эфир