Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] Preg replace oraz limit
-gracz-
post
Post #1





Goście







witam, mam problem z limitem jeśli chodzi o preg replace.
otóż mam taki kod;

  1. $pattern = '#<div id="identyfikator" class="contentDescription">(.*?)</div>#';
  2. $rlimit = ($numBlocks - 1);
  3. $html = preg_replace($pattern, 'replace to', $html, $rlimit);


w kodzie html pojawia się kilka divów, które mają ten sam identyfikator (id="identyfikator") oraz tą samą klasę - tylko środek się różni tego diva
chodzi oto, żeby zastosowac limit - w tej chwili wszystko mi kasuje - jakby limit w ogóle nie działał.

obecnie:
w kodzie pojawiają się takie dwa divy
a zmienna $rlimit zwraca 1
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
b4rt3kk
post
Post #2





Grupa: Zarejestrowani
Postów: 1 933
Pomógł: 460
Dołączył: 2.04.2010
Skąd: Lublin

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


Cytat(gracz @ 26.06.2013, 10:48:25 ) *
witam, mam problem z limitem jeśli chodzi o preg replace.
otóż mam taki kod;

  1. $pattern = '#<div id="identyfikator" class="contentDescription">(.*?)</div>#';
  2. $rlimit = ($numBlocks - 1);
  3. $html = preg_replace($pattern, 'replace to', $html, $rlimit);


w kodzie html pojawia się kilka divów, które mają ten sam identyfikator (id="identyfikator") oraz tą samą klasę - tylko środek się różni tego diva
chodzi oto, żeby zastosowac limit - w tej chwili wszystko mi kasuje - jakby limit w ogóle nie działał.

obecnie:
w kodzie pojawiają się takie dwa divy
a zmienna $rlimit zwraca 1


Co się stanie jak wpiszesz $rlimit na sztywno? Np. 1?

Inna kwestia. Wyobraź sobie, że Twój HTML wygląda tak:

  1. <div id="identyfikator" class="contentDescription">jakas tresc pierwszego diva</div>
  2. <div id="identyfikator" class="contentDescription">jakas tresc drugiego diva</div>


Więc ów pattern:

  1. $pattern = '#<div id="identyfikator" class="contentDescription">(.*?)</div>#';


Zwróci 3 wyniki (a nawet więcej, ale są tu nieistotne):

  1. jakas tresc pierwszego diva

  1. jakas tresc pierwszego diva</div><div id="identyfikator" class="contentDescription">jakas tresc drugiego diva

  1. jakas tresc drugiego diva


Poza tym, powinno występować tylko jeden raz dane id w całym dokumencie (a przynajmniej tak jest w założeniu).


Ten post edytował b4rt3kk 26.06.2013, 10:04:42
Go to the top of the page
+Quote Post

Posty w temacie
- gracz   [PHP] Preg replace oraz limit   26.06.2013, 09:48:25
- - b4rt3kk   Cytat(gracz @ 26.06.2013, 10:48:25 ) ...   26.06.2013, 09:56:29
- - Gość   nic, efekt będzie ten sam - ponieważ zmienna ...   26.06.2013, 10:01:12
- - Gość   czyli jak regułka ma wyglądać? głowie się, kombinu...   26.06.2013, 10:20:18
- - b4rt3kk   Reguła musi sprawdzać, czy pomiędzy <div> a ...   26.06.2013, 11:19:39


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

 



RSS Aktualny czas: 3.10.2025 - 12:10