|
|
|
| Здравствуйте.
Очень хочу узнать по какой причине выражение
не соответствует строке
отчего приходится писать выражение вида
И не эту ли проблему решили в последних версиях php? | |
|
|
|
|
|
|
|
для: deimand
(28.02.2012 в 00:02)
| | Очень странно, особенно, что одно выражение не работает, а другое работает. В моем понимании они либо оба работать должны, либо оба не работать. | |
|
|
|
|
|
|
|
для: cheops
(28.02.2012 в 00:10)
| | Вот и я целый день голову ломаю. Сначала думал что домашний компьютер подводит, попробовал на хостинге - то же самое.
Использую для проверки текста на отсутствие запрещенных символов. Точнее на присутствие только разрешенных. И ни как не хочет именно с русскими символами работать. С кодировками все нормально, все данные и скрипты в utf-8? а русский диапазон приходится вручную прописывать. Это же спятить можно )
Вот это работает на ура. Вырезаю алфавит и заменяю на диапазон - форму заполнить не представляется возможным.
<?php if(!preg_match("/^([абвгдеёжзийклмнопрстуфхцчшщъыьэюяАБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ-\w\d\s\.,]+)$/isU", $title))
echo 'Строка содержит запрещенные для ввода символы';
|
Может у меня глаз замылен да я какой-то элементарной ошибки не вижу? | |
|
|
|
|
|
|
|
для: deimand
(28.02.2012 в 00:52)
| | А какая версия пыха? У меня дома 5.2.17, на хостинге 5.3.8. Везде вариант /[а-яё]+/i прекрасно работает! | |
|
|
|
|
|
|
|
для: deimand
(28.02.2012 в 00:52)
| | >С кодировками все нормально, все данные и скрипты в utf-8?
Тогда понятно, почему у вас диапазоны не работают, добавьте спецификатор u. | |
|
|
|
|
|
|
|
для: cheops
(28.02.2012 в 11:44)
| | Только руки дошли проверить - работает, спасибо, не знал этого ньюанса. | |
|
|
|