|
|
|
| Здрасьте, я чет где ни читаю, все до меня не доходит как создавать рег. выражения
В куче символов трудно чето понять,все время их обходил как то ява скриптами (Стыбзденными)
А столкнулся и стопор....
Вообщем, подскажите пожалуйста как написать рег. выражение для функции preg_match
чтобы выдавал true, если переменная, которую обрабатываем была только из английских букви цифр без пробелов,возможен дефис....
хотябы чтоб просто слово состояло из англ.букв.... | |
|
|
|
|
|
|
|
для: l-mariachi
(16.05.2008 в 19:35)
| | Ну вот я так примерно делаю:
$nekorr=false;
if(preg_match("/[^0-9]/",$text)) {
if(preg_match("/[^a-z,A-Z,0-9]/",$text)) {$nekorr=true;}
}
else {$nekorr=true;}
|
т.е.
blaBla - корректный ввод.
0768 - не корректный
bla20Bla - корректный | |
|
|
|
|
|
|
|
для: kvv
(16.05.2008 в 19:50)
| | ооо, ясно, спасибо, а вот [^a-Z] не тоже самое что [^a-z,A-Z] ? | |
|
|
|
|
|
|
|
для: l-mariachi
(16.05.2008 в 19:54)
| | Можно. Я просто для себя так и пишу... Для наглядности (:
К слову: регулярные выражения - целая наука. | |
|
|
|
|
|
|
|
для: kvv
(16.05.2008 в 20:06)
| | >> ооо, ясно, спасибо, а вот [^a-Z] ...
>Можно.
Так писать нельзя.
PS. исходную задачу решает вызов
echo preg_match("/^[-a-zA-Z0-9]+$/", $text);
|
| |
|
|
|
|
|
|
|
для: Trianon
(16.05.2008 в 20:12)
| | А +$ эт че такое? | |
|
|
|
|
|
|
|
для: l-mariachi
(16.05.2008 в 20:26)
| | попробуйте убрать плюс... поглядите что выйдет.
потом попробуйте убрать доллар...
Между прочим, символ ^ в моем примере и в примере kvv обозначает совершенно различные вещи. | |
|
|
|