Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]pregmatch
-preg_match-
post
Post #1





Goście







  1. $ile = preg_match_all('|(\d+)\-(\d+)|', $text, $matches);
  2. for ($i = 1; $i <= $ile; $i++)
  3. {
  4. preg_match('|(\d+)\-(\d+)|', $text, $matches);
  5. $number = $matches[1] - $matches[2];
  6. $text = str_replace($matches[0], $number, $text);
  7. }


Witam, mam skrypt który w stringu zamienia x-x, na x-x, czyli 5-2, na 3. A jak zrobić żeby brał też pod uwagę -x-x, próbuje dodać - z przodu, ale nic nie daje. :/
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
vonski
post
Post #2





Grupa: Zarejestrowani
Postów: 292
Pomógł: 89
Dołączył: 27.12.2006
Skąd: Warszawa

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


  1. preg_match_all('/(-?\d+)([\-\+])(\d+)/', $text, $matches, PREG_SET_ORDER);
  2.  
  3. foreach($matches as $submatch) {
  4. if($submatch[2] == '-') {
  5. $text = str_replace($submatch[0], $submatch[1] - $submatch[3], $text);
  6. } else {
  7. $text = str_replace($submatch[0], $submatch[1] + $submatch[3], $text);
  8. }
  9. }


Teraz powinno działać dla "+" i "-"
Go to the top of the page
+Quote Post

Posty w temacie
- preg_match   [PHP]pregmatch   9.02.2012, 18:58:01
- - -k3dziu-   Sam się jeszcze uczę korzystać z wyrażeń regularny...   9.02.2012, 20:00:09
- - Gość   [PHP] pobierz, plaintext $ile = preg_match_all...   9.02.2012, 23:22:49
- - vonski   Spróbuj tak: [PHP] pobierz, plaintext preg_match_...   10.02.2012, 09:25:31
- - preg_match   Dzięki! Super, działa. Ale dlaczego jak zamien...   10.02.2012, 12:26:12
- - vonski   [PHP] pobierz, plaintext preg_match_all('/...   10.02.2012, 14:21:28


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: 4.10.2025 - 01:42