Вы можете использовать
^(?:[^\W\d]| )+$
См. Демоверсию regex . Его также можно записать как ^(?:(?!\d)[\w ])+$
.
Подробнее
^
- начало строки
(?:[^\W\d]| )+
- 1 или более
[^\W\d]
- символы, отличные от несловесных и цифровых символов
|
- или
- пробел
$
- конец строки.
В ^(?:(?!\d)[\w ])+$
, [\w ]
, который может совпадать с любым словом и символом пробела, он ограничен символом (?!\d)
и поэтому не соответствует цифрам.
Или, если вам нужны только ASCII слова:
^[a-zA-Z_ ]+$
Пожалуйста, имейте в виду, что он также допускает подчеркивание, так как \w
соответствует _
символам. Если вам это не нужно, используйте ^(?:[^\W\d_]| )+$
/ ^(?:(?![\d_])[\w ])+$
/ ^[a-zA-Z ]+$
.