Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> znowu regex, wykorzystanie grup
yeti
post 4.11.2004, 00:03:19
Post #1





Grupa: Zarejestrowani
Postów: 52
Pomógł: 0
Dołączył: 12.09.2003

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


No i znowu męczą mnie regularne. Po lekturze tutków bendiego wszystko było już jasne, ale niestety, znowu mam zgryz.

Mam wyrażenie:
  1. <?php
  2.  
  3. $comment = '<!-- komentarz -->';
  4. $k = 1;
  5.  
  6. ?>

Nie mam pojęcia dlaczego, ale wynik operacji:
  1. <?php
  2.  
  3. $marker = preg_replace('%<!--.(.*).-->%', '<!-- $1'.$k.' -->', $comment);
  4.  
  5. ?>

zamiast wyglądać:
  1. <!-- komentarz1 -->

wygląda tak:
  1. <!-- -->

Jeżeli po wyrażeniu $1 dam jakikolwiek znak (może być i spacja) a dopiero potem dołączę zmienną k wszystko jest ok (znaczy nie tak jak potrzebuję, ale przynajmniej coś się dzieje):
  1. <?php
  2.  
  3. $marker = preg_replace('%<!--.(.*).-->%', '<!-- $1 '.$k.' -->', $comment);
  4.  
  5. ?>

i dostajemy:
  1. <!-- komentarz 1 -->


Niestety jak dla mnie to nie jest dobre sad.gif
Czy może mi ktoś podpowiedzieć co robię nie tak?


*************************************************************
No i po kłopocie, poprawna składnia:
  1. <?php
  2.  
  3. $marker = preg_replace('%<!--.(.*).-->%', '<!-- ${1}'.$k.' -->', $comment);
  4.  
  5. ?>

ehh te literały ;p

Ten post edytował yeti 4.11.2004, 00:11:10


--------------------
pozdrawiam
Krzysiek
Go to the top of the page
+Quote Post
bendi
post 4.11.2004, 09:21:56
Post #2





Grupa: Zarejestrowani
Postów: 401
Pomógł: 5
Dołączył: 14.09.2003
Skąd: Wrocław

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


Polecam dodac non-greedy, bo jak bedziesz mial wiecej tych komentarzy to rezultaty beda dosc niespodziewane
  1. <?php
  2.  
  3. $marker = preg_replace('%<!--.(.*?).-->%', '<!-- ${1}'.$k.' -->', $comment);
  4.  
  5. ?>


--------------------
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: 14.08.2025 - 12:25