[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Не работает регулярное выражение.
BlackGhost
Подскажите пожалуйста:

Почему-то, если я в вункции использую следующее регулярное выражение

if (!preg_match("/^[a-zA-Z]+$/",$text)   )             
return 1;
else
return
0;
, то все нормально работает: 1, если что-то кроме английских символов и 0, если английские.


А вот если я проверяю русские символы:

if (!preg_match("/^[а-яА-Я]+$/",$text)   )             
return 1;
else
return
0;
, то почему-то постоянно единица!
Кодировку использую utf8.
Placido
А нет ли среди символов в переменной $text буквы "Ё"/"ё"?
Guest
Нет, про "Ё" я уже читал.... Думал, может я на ночь глядя русские буквы с английскими путаю))) Поэтому уже от безысходности вставлял [а-яА-Я] поочереди с разных форумов. Вот даже приведу всю фунцию...

<? function correct_input($text) // Функция проверки корректности воода.
{

if (!preg_match("/^[а-яА-Я]+$/",$text)
// if (!preg_match("/^[a-zA-Z]+$/",$text) )
return 1;
else
return
0;
}
?>


Она лежит в файле library.php, который подключается в самом начале require_once('Library/library.php');

Вот приведу фрагмент использования ее в коде:

		if (correct_input($_POST['fio_stud'])!=1)
{
$insertSQL = "INSERT INTO students (fio_stud, GrupId, kurs, godroj) VALUES ('".$_POST['fio_stud']."',".$_POST['nomer_grup'].",
"
.$_POST['nomer_kurs'].",".$_POST['god_roj_stud'].")"; // Зопрос добавления данных в таблицу students
// echo $insertSQL;

mysql_select_db($database_students_BD, $students_BD);
$Result = mysql_query($insertSQL, $students_BD) or die(mysql_error());
}
Игорь_Vasinsky
if (!preg_match("/^[а-яё]+$/iu",$text) 


_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.