IMHO.WS

IMHO.WS (https://www.imho.ws/index.php)
-   Веб-программирование (https://www.imho.ws/forumdisplay.php?f=29)
-   -   Правила ввода (Perl) (https://www.imho.ws/showthread.php?t=24680)

dafich 18.03.2003 11:58

Правила ввода (Perl)
 
Подскажите как организовать запрет ввода: пробелов, символов типа @#$%^ и смесь латиницы с кирилицей?

if ($FORM{'test'}) {
$name = "$FORM{'test'}";
$name =~ ???;
}

Ghost 19.03.2003 19:18

С помощью такой фичи:
Код:

$name=~s/что_заменить/на_что_заменить/g;
В что_заменить можно вставлять шаблоны:

. Соответствует любому символу
[мн-во симв] Соответствует любому символу из данного мн-ва
[^мн-во] Отрицание мн-ва символов
(....) Группировка элементов(и также запоминание в переменных $1 $2 $3 ...)
(..|..|..) Одна из альтернатив
* повторение образца 0 или более раз
? Повторение 0 или 1 раз
+ Повторение 1 или более раз
{n,m} повторение от n до m раз
{n} повторение точно n раз
{n,} повторение n и более раз
Спец символы:
\t \r \n ... Управляющие символы:табуляции,возврат каретки,перевод строки.....
\d Соответствует цифре,Аналог [0-9]
\D Соответствует нецифровому симсволу,аналог[^0-9]
\w Соответствует букве
\W Соответствует небуквеному символу
\s Соответствует пробельным символам(пробелы,табуляции,новые строки..)
\S Соответствует непробельному символу
\b Соответствует границе слова
\B Соответствует не границе слова

Например:
Код:

$name=~s/\[B\]/<b>/g;
$name=~s/\[\/B\]/<\/b>/g;



Часовой пояс GMT +4, время: 22:00.

Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.