Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум Регулярные Выражения

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Помогите подправить регулярку.
 
 автор: dirol   (06.06.2011 в 11:10)   письмо автору
 
 

есть база ключевых слов и ссылка на это слово.

при выводе из базы отображается не коректно.




     $source= keywords_save2($hometext);


  echo " $source\n";

function keywords_save2($text){
global $prefix, $db, $conf;
    setlocale(LC_ALL, 'ru_RU.CP1251');
    $results = $db->sql_query("SELECT id, word, description FROM ".$prefix."_keyword");
    while (list($id, $word, $description) = $db->sql_fetchrow($results)) {
     $list_key2.= "$word||$description,";
    }

   $list_key = explode(",",$list_key2);
    foreach($list_key as $key=>$val){

      list($k, $v) = explode('||', trim($val));
      if($k != '' && $v != ''){
          if(preg_match("|".$v."|is", $text)==false){

          $keys[$k] = "[url=".($v)."]".$k."[/url]";
          }
      }
   }

  foreach($keys as $key=>$val){
      $pattern = '|\b'.$key.'\b|Uis';

      $text = preg_replace($pattern, $val, $text, 1);
  }
return $text;
}


По инициативе премьер-министра России Владимира Путина, населению откроют доступ к участию во власти. Как сообщает "Коммерсантъ", с понедельника начнется прием частных
лиц в "Общероссийский народный фронт" (ОНФ), председателем координационного совета
которого является Путин. Для вступления надо будет заполнить письмо-анкету на сайте премьер-министра. Решение о приеме население.html]населения[/url] было принято после того, как к
главе правительства стали обращаться граждане, не входящие в общество.html]общественные[/url] организации, но желающие вступить во

"Фронт", отметил пресс-секретарь Путина Дмитрий Песков. Кандидаты в "фронтовики" в анкете на вступление должны подтвердить, что "разделяют задачи и ориентиры" ОНФ. "Мы получим точное количество
людей, которые поддерживают Фронт", – подчеркнул Песков. По его словам, "задачи показать,
какие мы большие, не стоит, поскольку набор входящих во Фронт организаций говорит сам за себя". Напомним, что на встрече с членами координационного совета ОНФ Путин подчеркнул,
что Фронт создан "для того, чтобы были востребованы все конструктивные идеи, чтобы у гражданского общества – молодежных,
женских, ветеранских организаций, деловых кругов, профессиональных союзов и объединений – была дополнительная возможность непосредственно, напрямую участвовать в выработке
важнейших государственных решений".



вот к примеру общество.html]общественные[/url]

в базе по слову общественный ведется ссылка на слово общество а оно тут по двойному отображается

  Ответить  
 
 автор: cheops   (06.06.2011 в 11:17)   письмо автору
 
   для: dirol   (06.06.2011 в 11:10)
 

Имеется в виду вот это регулярное выражение?
$pattern = '|\b'.$key.'\b|Uis';


Правильно ли я понимаю, что вы хотите, чтобы регулярное выражение не затрагивало то, что [url][/url] или проблема в другом, не все url корректно обрабатываются?

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования