Eğer arama yapıyor ve metin üzerinde değiştirin ediyorsanız, bu kolaydır:
$text = 'windows xp';
$input = '....';
$output = str_replace($text, '<em>' . $text . '</em>', $input);
Bir dize olarak depolanan HTML bloğunu varsa düşünülmesi gereken bir konu var: ne metin eğer için kullanıcı arar bir etiket parçası olan veya adını veya nitelik değerine? Eğer "güçlü" vurgulamak istiyorsanız bu değiştirmek istemiyorum:
<strong>some text</strong>
ile:
<<em>strong</em>>some text</<em>strong</em>>
biçimlendirme artık geçerli olacak gibi.
Bu basit arama kullanarak ve değiştirin ya da biçimlendirme üzerinde düzenli ifadeler ile sorundur. Bu işleme en iyi yolu, bir DOM ağaca biçimlendirme ve sonra metin düğümlerinde değiştirmeleri yaparak yürümeye dönüştürmektir. Hatta bu sorunları var. Eğer "windows xp" vurgulamak istiyorsanız bu davayı vurgulamak istiyorum:
windows <i>xp</i>
Bu kullanıcı vurgulamak istiyorum varsaymak makul yani "windows xp" olarak görünür euse inci.