Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> prosty regexp
M4chu
post 11.03.2005, 17:42:34
Post #1





Grupa: Zarejestrowani
Postów: 135
Pomógł: 0
Dołączył: 28.09.2003
Skąd: Rzeszów

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


Witam potrzebuje regexpa, ktory zamienia {n} na wartosc z tablicy $array[n] przy czym ilosc tych znacznikow moze byc dowolna, np
  1. <?php
  2.  
  3. $array = array( 10, 30, 50 );
  4. $string = '1/8/{0}/2/{1}/{2}'; // 1/8/10/2/30/50
  5.  
  6. ?>

Pozdrawiam
Go to the top of the page
+Quote Post
crash
post 11.03.2005, 18:04:20
Post #2





Grupa: Przyjaciele php.pl
Postów: 2 196
Pomógł: 2
Dołączył: 17.01.2004
Skąd: Sosnowiec

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


A może być tak?
  1. <?php
  2. $array = array( 10, 30, 50 );
  3. $string = '1/8/{0}/2/{1}/{2}'; // 1/8/10/2/30/50
  4.  
  5. preg_match_all('#{([0-9]+)}#', $string, $o);
  6.  
  7. foreach($o[1] as $b)
  8. {
  9.     $string = str_replace('{'.$b.'}', $array[$b], $string);
  10. }
  11.  
  12. echo $string;
  13. ?>


Logiczniej byłoby:
  1. <?php
  2. preg_replace('#{([0-9]+)}#', $array['1'], $string);
  3. ?>
ale niestety to nie działa...

Ten post edytował crashu 11.03.2005, 18:06:56


--------------------
Go to the top of the page
+Quote Post
FiDO
post 11.03.2005, 18:24:46
Post #3





Grupa: Przyjaciele php.pl
Postów: 1 717
Pomógł: 0
Dołączył: 12.06.2002
Skąd: Wolsztyn..... Studia: Zielona Góra

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


  1. <?php
  2.  
  3. preg_replace('#{([0-9]+)}#e', '$array[1]', $string);
  4.  
  5. ?>


--------------------
Brak czasu :/
Go to the top of the page
+Quote Post
M4chu
post 11.03.2005, 21:07:36
Post #4





Grupa: Zarejestrowani
Postów: 135
Pomógł: 0
Dołączył: 28.09.2003
Skąd: Rzeszów

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


Dziala, wielkie dzieki!
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: 12.06.2025 - 12:55