ExBB Community
»
Файловый ExBB
»
Решение проблем
»
Вопрос по регулярному выражению
Страниц
(1):
[1]
1.
halloworld
- 26 июня 2010 — 23:53 -
перейти к сообщению
доброе утро
Из register.php:
CODE:
if (preg_match("#(guest|admin|moder|админ|гость|модер|[^0-9A-Za-zА-Яа-я-_\.\s])#is", "abc")) { die(';('); }
Выдает - Compilation failed: range out of order in character class at offset
интересует разгадка
2.
Александр Михалицын
- 27 июня 2010 — 03:25 -
перейти к сообщению
halloworld
,
так. Какая версия PHP и библиотеки PCRE у вас на сервере?
UPD: и да. В какой кодировке файл register.php сохранен?
3.
halloworld
- 27 июня 2010 — 09:57 -
перейти к сообщению
кодировка utf-8
PHP Version 5.2.13
PCRE (Perl Compatible Regular Expressions) Support enabled
PCRE Library Version 7.9 2009-04-11
4.
Александр Михалицын
- 27 июня 2010 — 10:47 -
перейти к сообщению
Попробуйте сохранить файл в cp1251.
С версией библиотеки PCRE и PHP на вашем сервере все впорядке.
5.
halloworld
- 27 июня 2010 — 11:21 -
перейти к сообщению
Спасибо, проблема более не актуальна.
Для работы preg_match в скрипте с кодировкой utf нужно использовать дополнительный модификатор "u"
CODE:
if (preg_match("#(guest|admin|moder|админ|гость|модер|[^0-9A-Za-zА-Яа-я-_\.\s])#is[color=red]u[/color]", "moder")) { die(';('); }
6.
Александр Михалицын
- 28 июня 2010 — 08:06 -
перейти к сообщению
Так, а собственно зачем с ней работать в Utf-8? Форум изначально написан на cp1251. Могут возникнуть разные "побочные эффекты".
(Добавление)
"Тупо" переведя форум на utf-8 вы не получите её преимуществ, потому что вся обработка текста идет в cp1251.
7.
halloworld
- 28 июня 2010 — 13:59 -
перейти к сообщению
Возникла проблема при интеграции форума с уже готовым проектом на utf-8.
Естественно просто так менять кодировку было бы нецелесообразно.
Вы имеете ввиду вся работа с текстом это функции в postings.php и $fm->Read\Write в fm.class.php ?
8.
Александр Михалицын
- 28 июня 2010 — 14:11 -
перейти к сообщению
Нет. Я о, например, парсере BBCodeов. Например китайский язык он уже не воспримет. Хотя и кодировку вы поставили utf-8.
Powered by
ExBB
[Script Execution time: 0.0416] [
]