"Bardzo lubię kwiatki"
$tekst = "Bardzo lubię kwiaty lalala Bardzo lubić kwiatki nanan hahaha Bardziej lubię niebieskie i zielone kwiatki Bardzo lubię kwiatuszki"; $of = "Bar.* lub.* kwi.*"; $tekst = preg_replace("/\b($of)\b/", '<span style="border: 1px solid black; ">' . "$1" . '</span>' , $tekst);
jako synonim rozumiem wyraz składający się z co najmniej trzech pierwszych liter wyrazu.
Powyższy fragment powinien zaznaczyć
1: Bardzo lubię kwiaty
2: Bardzo lubić kwiatki
3: Bardzo lubię kwiatuszki
A on zaznacza całość. Jeżeli na końcu wyrażenie regularnego dopisze siU to wtedy zaznacza prawidłowo frazy wypisane wyżej ale również czwartą
"Bardziej lubię niebieskie i zielone kwiatki" a tego już nie powinien mi wyłapywać.
$tekst = "Bardzo lubię kwiaty lalala Bardzo lubić kwiatki nanan hahaha Bardziej lubię niebieskie kwiatki Bardzo lubię kwiatuszki"; $of = "Bar.* lub.* kwi.*"; $tekst = preg_replace("/\b($of)\b/siU", '<span style="border: 1px solid black; ">' . "$1" . '</span>' , $tekst);
Chodzi o to, że jak fraza składa się z trzech wyrazów to fraza z synonimów też powinna się składać z trzech wyrazów. Proszę o pomoc w rozwiązaniu problemu.