Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] preg_replace - łatwe, a trudne
sss
post
Post #1





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 5.01.2011

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


Dzień dobry, cześć i czołem.
Mam taki malutki problem - chcę zamienić w całym dokumencie takie coś:
"312,23 zł" na 312.23 (wyciąć " oraz ' zł' i zamienić ',' na '.', cyfry zostawić bez zmian). Próbuje i próbuje i cały czas, albo zamieniam wszystko na '.', albo nic sie nie dzieje. Juz nie mam siły do tych wyrażeń regularnych. Jak możecie to pomóżcie. Dzięki z góry

ok, takie coś stworzyłem (teraz tylko zostało spacje usunąć)
  1. $tresc = preg_replace('/"(.*?),(.*?)zł"/s', '$1.$2', $tresc);


Ten post edytował sss 5.01.2011, 09:31:28
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
amii
post
Post #2





Grupa: Zarejestrowani
Postów: 728
Pomógł: 76
Dołączył: 12.06.2009

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


Powinno zadziałać. Przy okazji co robi ten modyfikator /s bo nie mogę tego znaleźć w źródłach ?

  1. $pat = '/"(.*?),(.*?)zł"/s';
  2.  
  3. function zamien($matches) {
  4. return $matches[1].'.'.$matches[2];
  5. }
  6.  
  7. $tresc = preg_replace_callback($pat, "zamien()", $tresc);

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: 11.10.2025 - 21:59