Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> preg_replace, zamiana z uzyciem wyrazen regularnych
dtb
post
Post #1





Grupa: Zarejestrowani
Postów: 476
Pomógł: 1
Dołączył: 5.11.2005
Skąd: Bieruń city

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


Mam kod:
  1. <?php
  2. $zmienna = preg_replace ('/([0-9]+)/', '$1', $zmienna); // dziala
  3. ?>

Jak widać kod zamiena w zmiennej '$zmienna' wszystkie cyfry na te same cyfry. Jednak chciałbym przepuścić te cyfry przez funkcje:
  1. <?php
  2. $zmienna = preg_replace ('/([0-9]+)/', funkcja('$1'), $zmienna); // blad
  3. $zmienna = preg_replace ('/([0-9]+)/', funkcja($1), $zmienna); // blad
  4. ?>

No właśnie. Błąd! Jak więc to zrobić?

Ten post edytował dtb 5.11.2005, 11:32:09
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
dtb
post
Post #2





Grupa: Zarejestrowani
Postów: 476
Pomógł: 1
Dołączył: 5.11.2005
Skąd: Bieruń city

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


Dzięki.
Uprościłem trochę twój kod:

  1. <?php
  2. function replace ($z, $na, $ciag)
  3. {
  4.     $ciag = '''.$ciag.'';';
  5.     $ciag = preg_replace ($z, $na, $ciag);
  6.     $ciag = '$ciag = '.$ciag;
  7.     eval ($ciag);
  8.     return $ciag;
  9. }
  10.  
  11. function repFun($fun)
  12. {
  13.     return ''.'.$fun.'.''
  14. }
  15.  
  16. $ciag = replace ('/([0-9]+)/', repFun(funkcja($1)), $ciag);
  17. ?>


Ten post edytował dtb 5.11.2005, 12:25:34
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: 27.12.2025 - 16:05