![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 154 Pomógł: 0 Dołączył: 17.12.2003 Skąd: Olsztyn Ostrzeżenie: (0%) ![]() ![]() |
Witam,
Natknąłem się na taki problem: Pobieram z bazy tekst i muszę znaleść w nim wszystkie wystąpienia {%$zmienna%} gdzie słowo "zmienna" może być dowolne. I teraz chcę takie wystąpienie porównać z moją listą dopuszczonych "zmiennych" i w przypadku gdy jest nieprawidłowe zostanie zastąpione słowem error. Dziwnie to brzmi więc napisze to tak: 1. pobieram tekst z bazy do zmiennej 2. wyszukuje wystapienia "{%...%}" (czyli zawartosci miedzy tymi nawiasami klamrowymi z procentem 3. w przypadku gdy zawartość jest inna niż dopuszczone zostaje tam wpisane $error 4. do pkt 2. aż do wyczerpania wystąpień. dla przykładu: {%$link%} jest pożądane więc przejdzie {%$majtki%} nie ma na whiteliście więc zostanie zastąpione {%$error%} {%cokolwiek_innego_wpisze%} to samo co wyżej. tzn mam teoretyczne rozwiazanie wyszukać pozycję {% i %} pobrać zawartość spomiędzy nich porównać zamienić wartość ale to tylko w teorii ładnie wygląda i dla sporego tekstu będzie strasznie ślamazarne a takich wywołań będzie sporo, jest jakiś normalny sposób na to?? pozdrawiam -------------------- ![]() |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 442 Pomógł: 0 Dołączył: 27.12.2005 Ostrzeżenie: (0%) ![]() ![]() |
Ten algorytm przejedzie cały tekst raz ( jak dobrze zaimplementujesz ), więc będzie szybki |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 154 Pomógł: 0 Dołączył: 17.12.2003 Skąd: Olsztyn Ostrzeżenie: (0%) ![]() ![]() |
Dzięki, oto chodziło
![]() -------------------- ![]() |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 14.08.2025 - 00:57 |