информационная безопасность
без паники и всерьез
 подробно о проектеRambler's Top100
Портрет посетителяСтрашный баг в WindowsАтака на Internet
BugTraq.Ru
Русский BugTraq
 Модель надежности двухузлового... 
 Специальные марковские модели надежности... 
 Модель надежности отказоустойчивой... 
 macOS High Sierra пускает под рутом... 
 Уязвимость, давшая доступ к системе... 
 Oracle выпустила срочный патч для... 
главная обзор RSN блог библиотека закон бред форум dnet о проекте
bugtraq.ru / форум / web building
Имя Пароль
ФОРУМ
если вы видите этот текст, отключите в настройках форума использование JavaScript
регистрация





Легенда:
  новое сообщение
  закрытая нитка
  новое сообщение
  в закрытой нитке
  старое сообщение
  • Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
  • Новичкам также крайне полезно ознакомиться с данным документом.
[upd] Проблема с регэкспами и utf-8 03.12.12 21:17  
Автор: Fighter <Vladimir> Статус: Elderman
Отредактировано 03.12.12 22:49  Количество правок: 2
<"чистая" ссылка>
Проблема в следующем: нужно было перевести сайт с ср1251 на utf. Были проделаны стандартные в таких случаях действия и при тестировании на локальной копии сайта все было хорошо, но после переноса на сервер... Регулярные выражения типа preg_match('#^[a-z0-9-]?$#i', $fas) или preg_replace('/[а-яА-Я]?$/i', $vfd) перестали работать. Причем проблема связана именно с использованием '[...]', а модификатор 'u' вообще вырубает выполнение с предупреждением "Compilation failed: this version of PCRE is not compiled with PCRE_UTF8 support at offset..." Как с этим бороться? Установить модули, скомпиленные с поддержкой utf? Или есть другие пути?

[upd]
Установка "правильных" модулей исправило ситуацию с латиницей, но с кириллицей проблемы остались(
Переменный размер символом в байтах очень неудобен при... 06.12.12 14:18  
Автор: leo <Леонид Юрьев> Статус: Elderman
Отредактировано 06.12.12 14:19  Количество правок: 1
<"чистая" ссылка>
Переменный размер UTF-8 символов в байтах очень неудобен при реализации регулярок. Поэтому непосредственно в UTF-8 толком никакие регулярки не работают.

Стандартное решение = перед поиском регулярок все переводиться в UTF16/unicode. Проблемы с суррогатными парами при это все равно остаются, но решаются перекодированием в UTF-32.

Ну и в целом - http://site.icu-project.org/
Спасибо, понял. Ушел читать) 06.12.12 15:39  
Автор: Fighter <Vladimir> Статус: Elderman
<"чистая" ссылка>
1






Rambler's Top100
Рейтинг@Mail.ru


  Copyright © 2001-2017 Dmitry Leonov   Page build time: 0 s   Design: Vadim Derkach