Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]preg_replace
Qss
post 5.07.2010, 14:22:30
Post #1





Grupa: Zarejestrowani
Postów: 141
Pomógł: 7
Dołączył: 22.02.2009

Ostrzeżenie: (0%)
-----


  1. $string = "/start1/ sdsadad /end1/ sdsdsadsa /start2/ dfkhdbfh /end2/";


no mam coś takiego i teraz preg_replace chce usuwać wszytko co jest miedzy /start1/ i /end1/ i kolejno nastepne

  1. $content = preg_replace('(/start(.*?)/(.*?)/end(.*?)/)', "", $string);


Mam coś w tym stylu ale to osuwa wszytko niezależnie od numerka i co zrobić żeby tu numer end(.*?) był taki sam jak tu dowolny start(.*?)

Dzięki z góry a i przy okazji ma ktoś listę tych wszytki znaczków (.*?) że np same liczby litery itp..
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 1)
athei
post 5.07.2010, 19:03:57
Post #2





Grupa: Zarejestrowani
Postów: 389
Pomógł: 141
Dołączył: 11.04.2009

Ostrzeżenie: (0%)
-----


chyba o to ci chodzi
Kod
$content = preg_replace('#/start(\d+)/(.*?)/end\1/#', '/start$1//end$1/', $string);

lub
Kod
$content = preg_replace('#/start(\d+)/(.*?)/end\1/#', '', $string);

\1 to backreference, po to żeby numerki się zgadzały
$1 to znaleziony numer
$2 to byłby tekst pomiędzy
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 19.07.2025 - 09:03