Разрешить только буквы;без знаков препинания нет цифр - PullRequest
0 голосов
/ 23 июля 2010

Эй, ребята, вы можете мне помочь с этим. У меня есть это '/ [^ A-Za-z] /', но я не могу понять пунктуацию.

Милостивый!

Ответы [ 5 ]

4 голосов
/ 23 июля 2010

Используемое вами регулярное выражение не допускает букв; это противоположно тому, что вам сообщается в заголовке.

/[a-z]/i достаточно, если вы хотите принимать только буквы. Если вы хотите разрешить буквы типа à, è или ç, то вам следует расширить регулярное выражение; /[\p{L}]/ui должно работать со всеми буквами Unicode.

2 голосов
/ 23 июля 2010
#^[^a-z]+$#i

Ваш код был верным, вам просто нужны ^ и $.Таким образом, это означает, что символ all от начала до конца не допускает использования внешнего алфавита.Отрицательное совпадение здесь предпочтительнее положительного.

1 голос
/ 23 июля 2010

/ [^ A-Za-z] * / будет соответствовать всему, кроме букв. Вам не нужно указывать цифры или знаки препинания.

0 голосов
/ 23 июля 2010

Вы также можете использовать сокращение \w для «символа слова» (буквенно-цифровой плюс _). Конечно, некоторые движки регулярных выражений могут отличаться по поддержке для этого, но если это PCRE, это должно работать. См. Здесь (под заголовком "escape-последовательности").

0 голосов
/ 23 июля 2010

Внутри класса символов ^ означает, что нет.Итак, вы ищете , а не письмо.Вы хотите что-то вроде

[A-Za-z]+
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...