Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Выражаемся регулярно

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Описание: различия wamp'a и сервера & регулярка
kalamfur
Отправлено: 02 Ноября, 2009 - 06:41:46
Post Id


Новичок


Покинул форум
Сообщений всего: 6
Дата рег-ции: Нояб. 2009  


Помог: 0 раз(а)




Задача такая. Есть массив слов (слово1, слово2...)

Надо из текста

    текст текст текст текст текст текст текст текст текст текст текст текст
    текст текст текст текст наше слово1 текст текст текст текст текст текст текст
    текст текст текст текст текст текст текст текст текст текст текст текст
    текст текст текст
    текст текст текст текст текст текст "слово2ое" текст текст текст текст текст текст
    текст текст текст текст текст текст текст текст текст текст текст
    текст текст еще слово2а текст текст текст текст текст текст текст текст
    текст текст текст текст текст текст текст текст текст текст текст

================================ ===
    выбрать выделенное.
    наше слово1
    слово2ое
    еще слово2а

================================ ===


Делаю так:
PHP:
скопировать код в буфер обмена
  1.  
  2. $wc=array("[color=red]слово1[/color]", "[color=blue]слово2[/color]");
  3.  
  4. foreach ($wc as $w1) {
  5. [color=black]  $patterns = '/(^|\s|\W|\'|\")((\w{3,}\s+)?'.[color=red]$w1[/color].'\w*+)(\s|\W|\'|\")/is';[/color]
  6.   $replaser = "\$1<b>\$2</b>\$4";
  7.   $f = preg_replace($patterns, $replaser , $f);
  8. }
  9.  
  10. echo $f;


На WAMP'е работает "на ура".
На хосте - нет.

Где накосячил?
(Добавление)
На сервере это выглядит так: http://www[dot]kalamfur[dot]ru/
(Добавление)
всем пасибо, нашел.
 
 Top
EuGen Администратор
Отправлено: 02 Ноября, 2009 - 11:21:37
Post Id


Профессионал


Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007  
Откуда: Berlin


Помог: 707 раз(а)




Да пожалуйста, рады помочь _)


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
kalamfur
Отправлено: 08 Ноября, 2009 - 12:08:12
Post Id


Новичок


Покинул форум
Сообщений всего: 6
Дата рег-ции: Нояб. 2009  


Помог: 0 раз(а)




EuGen пишет:
Да пожалуйста, рады помочь _)


Если всё еще рады, то - как нельзя кстати (=

..Проблема оказывается не устранена - регулярка странным образом режет слова.
Результат её работы можно посмотреть на сайте - http://kalamfur[dot]ru

Подскажите, в чём проблема? Думаю что-то с локалями. Нужна помощь.
 
 Top
kalamfur
Отправлено: 08 Ноября, 2009 - 16:52:44
Post Id


Новичок


Покинул форум
Сообщений всего: 6
Дата рег-ции: Нояб. 2009  


Помог: 0 раз(а)




Радость
Решил, всем спасибо.
Если кому интересно - заменил \w на [a-zA-ZА-Яа-я]. Странно, но прокатило. Видимо..кодировка.
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Регулярные выражения »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB