За последние 24 часа нас посетили 17962 программиста и 1426 роботов. Сейчас ищут 836 программистов ...

подправить рег, не соображу сам

Тема в разделе "Регулярные выражения", создана пользователем wolandino, 2 июл 2008.

  1. wolandino

    wolandino Активный пользователь

    С нами с:
    5 фев 2006
    Сообщения:
    193
    Симпатии:
    0
    Адрес:
    Россия, Астрахань
    Приветствую, есть регулярное выражение:
    Код (Text):
    1. $string=preg_replace("/(слово1|слово2|ляляля|слово99)/si","<b>\\1</b>",$string);
    оно выделяет тегами соответственно все вхождения слов слово1, слово2 и т.д.
    Есть задача переписать рег таким образом, чтобы он заменял вхождения слово1, слово2 и.т.д при условии если после слова идет любой символ. отличный от a-zA-Zа-яА-Я0-9-
    как мне подправить рег?
     
  2. Psih

    Psih Активный пользователь
    Команда форума Модератор

    С нами с:
    28 дек 2006
    Сообщения:
    2.678
    Симпатии:
    6
    Адрес:
    Рига, Латвия
    PHP:
    1. <?php
    2. $string=preg_replace('/([a-zA-Zа-яА-Я0-9]+?[^a-zA-Zа-яА-Я0-9\ \-])/)/si', '<b>\\1</b>', $string);
    3.  
    Что-то подобное
     
  3. wolandino

    wolandino Активный пользователь

    С нами с:
    5 фев 2006
    Сообщения:
    193
    Симпатии:
    0
    Адрес:
    Россия, Астрахань
    спасибо - я сделал немного по-другому:
    Код (Text):
    1. preg_replace("/(\s+|\.)(".$all_forms.")([^a-zA-Z_А-Яа-я0-9])/si","\\1<a href=http://site.off/bla/article/".$tags[$i].">\\2</a>\\3",$buffer);