Forum Webscript.Ru

Программирование => PHP => Тема начата: от 02 Мая 2002, 14:52:00

Название: Проверка ввода в форму
Отправлено: от 02 Мая 2002, 14:52:00
Треба  проверить содержимое ввода на присутствие символов англ. и русского алфавита. С английским все просто
if (!eregi("[a-z]", $text))
а что делать с русским?
Заранее спасибо
Название: Проверка ввода в форму
Отправлено: FILA от 02 Мая 2002, 15:18:46
на ум пришёл только такой вариант ( и рус и инг и укр( :) ) и пробелы и дефисы и апострофы ( нужное зачеркнуть :) ):

"[a-zA-Z[:space:]АБВГДЕЖЗИЙКЛМНОПРСТУФХЦШЩЪЫЬЭЮЯ-абвгдежзийклмнопрстуфхцшщъыьэю`ґ\']+"
Название: Проверка ввода в форму
Отправлено: Dm от 02 Мая 2002, 20:38:02
настрой правильно локаль и будет работать:
eregi("[а-я]", $text)

пример:

for($i=1; $i<256; $i++) {
    $r = chr($i);
    if(eregi("[а-я]", $r)) echo $r;
}
?>

если все нормально, то должно быть:
АБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдежзийклмнопрстуфхцчшщъыьэюя