Forum Webscript.Ru
Программирование => Регулярные выражения => Тема начата: Nickolaz от 23 Января 2006, 13:32:49
-
Подскажите, пожалуйста, как выделить найденную подстроку в строке тегами...
Есть массив слов:
$words=array(\'lala\',\'B\');
При выделении тегом обычное рег. выражение выделяет вставленные ранее теги, получается каша :(
Понимаю, что надо использовать lookahead и lookbefore, но что-то не получилось. И решения в интернете почему-то не нашел
итак хотелось бы, чтобы строка
A lala got a Book
Превращалась в
A lala got a Book.
А не в
A <B>lalaB>ook.
Буду безмерно благодарен, если еще в этом рег. выражении будет возможность проверки на выделенность, т.е. слова: $words=array(\'lala\',\'al\')
Превращали строку выше в :
A lala got a Book
А не в:
A lala got a Book
Большое Спасибо :)
-
пока работает сие чудо:
|(?]*/B>)|i
но очень хочется его упростить...
Тем более, кажется, что оно не совсем верно :(
-
Тебе надо конкретно слова выделять или хочешь сделать автоматом заглавные буквы ?
Если слова - то ищи пробел за ними, а если заглавные то смотри что бы буквы были большие - тогда каши не будет...
-
ммм... Не очень понятен ответ :( Что-то наверное неправильно объяснил.
Нужно выделить некоторое количество слов в html-коде, не затронув при этом теги, и чтобы слова не перекрывались.
Я дал несколько примеров, посмотрите пожалуйста.
Что, собственно, нужно... нужно регулярное выражение, которое выделяло бы определенное слово, не затронув при этом структуру страницы (т.е. не изменив теги). Так же бы очень хотелось, чтобы содержимое тегов типа