![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 28 Pomógł: 0 Dołączył: 3.11.2006 Ostrzeżenie: (0%) ![]() ![]() |
Hej,
Jestem na ukończeniu mechanizmu wyszukiwarki na swojej stronie, ale utknąłem przy podświetlaniu wyszukiwanych słów. Tzn. wszystko jest dobrze, dopóki jakiś cwaniak nie będzie próbował wyszukać słowa będącego atrybutem jakiegoś tagu html, np. "title", ponieważ w bazie trzymam w przeszukiwanych polach cały html. W związku z tym, chcę przerobić użytego przeze mnie preg_replace'a tak, aby podświetlane były tylko słowa które nie znajdują się pomiędzy "<", a ">". Chyba dobrze rozumuję? ![]() Poniżej kawałek kodu z moim aktualnym preg_replace'm. Czy ktoś wie jak powinno brzmieć to wyrażenie, żeby działało tak jak wspomniałem wyżej?
|
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 52 Pomógł: 16 Dołączył: 8.08.2008 Skąd: London Ostrzeżenie: (0%) ![]() ![]() |
może strip_tags" title="Zobacz w manualu PHP" target="_manual i dopiero podświetlanie?
Ten post edytował collusio 28.06.2009, 15:57:24 -------------------- Freelancer - [C#, PHP, MySQL, xHTML, CSS]
michal.schweichler [at] gmail.com http://www.elance.com/s/michal_schweichler/ |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 109 Pomógł: 9 Dołączył: 12.03.2007 Skąd: kraków/tarnobrzeg/baranów/suchorzów Ostrzeżenie: (0%) ![]() ![]() |
Uruchom sobie ten przykład. Oczywiście niechlujnie ten kod jest napisany, chodziło mi wyłącznie o zaprezentowanie funkcji preg_replace_callback która została użyta. Najpierw wyszukiwany jest teks który znajduje się pomiędzy znacznikami <body>..</body> a następnie wyszukiwana jest każda para tekstu <znacznik>tekst a na samym końcu dopiero za pomocą standardowej funkcji str_replace podmieniany jest "tekst" na <wyroznienie>tekst</wyroznienie> -------------------- Każdy z was jest łodzią w której Może się z potopem mierzyć Cało wyjść z burzowej chmury Musi tylko w to uwierzyć! |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 14.08.2025 - 12:46 |