Показать сообщение отдельно
  #4 (permalink)  
Старый 10.10.2016, 19:46
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Сообщение от snovapavel
Если можете, помогите написать мою функцию.
Нет у вас никакой функции, а что я написал, как раз делает то, что нужно, и если только буквы, то еще проще:

$text = 'abbb cccc ddbabddd fafdfff gggbabggg';

$text = preg_replace(['/bab/i', '/(?<!>)a(?!<)/i'], ['b<b>a</b>b', '<i>a</i>'], $text);

echo htmlspecialchars($text); //результат <i>a</i>bbb cccc ddb<b>a</b>bddd f<i>a</i>fdfff gggb<b>a</b>bggg


И паттерны передаются массивом и замена есть массив, как раз для того чтобы проще для понимания. Написать паттерн и сделать замену можно то ведь и иначе.

Если изучаете, то тогда с чего либо простого, начиная отсюда - сначала сами выражения, а потом функции PCRE.

Последний раз редактировалось laimas, 10.10.2016 в 19:54.
Ответить с цитированием