Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> preg_replace ?
truvati
post
Post #1





Grupa: Zarejestrowani
Postów: 15
Pomógł: 0
Dołączył: 7.01.2006

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


Witam
mam oto takie coś:

  1. <?php
  2. $str="[tag] wazne [/tag] bzdura bzdura";
  3.  
  4. $str = preg_replace("#[tag](.*?)[/tag]#si", '<b>1</b>', $str);
  5. ?>


po wywyołaniu wyżej wymienionej funkcji otrzymuje:
"test bzdura bzdura"

natomaist po:
  1. <?php
  2. $str = preg_replace("#[tag](.*?)[/tag]#si", '<b>2</b>', $str);
  3. ?>

otrzymam:
"bzdura bzdura"


jakoś z preg_* i inyymi funkacjami do zamiany nie moge sobie poradzić, jak najprościej wczytać to co jest pomiędzy znaczkami [tag] [/tag] do okreslonej zmiennej ?

pozdrawiam
Truvati

Ten post edytował truvati 22.06.2006, 13:36:07
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
bim2
post
Post #2





Grupa: Zarejestrowani
Postów: 1 873
Pomógł: 152
Dołączył: 9.04.2006
Skąd: Berlin

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


Mhh bendi bardzo dobrze (od ciebie umiem wyrażenia http://bedkowski.pl). Ale wydaje mi się że chcaił wyciąć wszystkie tagi ^^

  1. <?
  2. $str="[tag] wazne [/tag] bzdura bzdura [tag1]lala[/tag1]";
  3.  
  4. $aMatches = array();
  5.  
  6. $str = preg_replace("#[(.*)](.*?)[/(?:.*)]#sie", '$aMatches["1"] = trim( "2" );', $str);
  7.  
  8. print_r( $aMatches );
  9. ?>

Powinno być:
array(
"tag" => 'wazne' ,
"tag1" => 'lala'
)

PS> Co daje ? po (.*
Go to the top of the page
+Quote Post

Posty w temacie


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: 9.10.2025 - 09:14