Как добавить в регулярное выражение пробел

Есть вот такое регулярное выражение.

/^\p{L}{1,64}$/u;

И сюда нужно добавить возможность ставить 0 или больше пробелов. И лучше, чтобы проверяла также, чтобы после пробелов было слово или буква


Ответы (1 шт):

Автор решения: Wiktor Stribiżew

Вы можете использовать

/^(?=.{1,64}$)\p{L}+(?:\s+\p{L}+)*$/u

См. пример работы выражения.

Подробности

  • ^ - начало строки
  • (?=.{1,64}$) - проверка на длину строки, в ней должно быть от 1 до 64 знаков, отличных от символов перевода строки
  • \p{L}+ - 1 и более букв
  • (?:\s+\p{L}+)* - 0 и более повторов
    • \s+ - 1+ пробельных символов
    • \p{L}+ - 1 и более букв
  • $ - конец строки
→ Ссылка