Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Wyrażenie regularne
Forum PHP.pl > Forum > PHP
Rafael6666
Mam mały problem...

Mam taki tekst:

p-34-91342367 n-24-1e24op6k.html s-56-90909090

Chciałbym za pomocą funkcji preg_match wyciąć ten fragment tekstu:

1e24op6k

czyli wszystko pomiędzy n-24- a .html, ale liczba 24 jest zmienna, może to być np. 27, albo 88...

Czy może ktoś to jakoś wykonać, bo nie znam się za bardzo na wyrażeniach regularnych sad.gif ...

Pozdrawiam i czekam na pomoc.
pojas
Cytat(pakalk)
Polski opis wyrażeń regularnych

http://www.grabun.com/wyrazenia-regularne/


  1. <?php
  2.  
  3. $string = 'p-34-91342367 n-24-1e24op6k.html s-56-90909090';
  4.  
  5. preg_match( '#(p-34-91342367 n-)([0-9]{2})-([^.html]+)(.+)#', $string, $new_string );
  6.  
  7. $new_string = $new_string[1].$new_string[2].$new_string[4];
  8.  
  9. echo '<pre>wejście: <b>'.$string.'</b><br>wyjście: <b>'.$new_string.'</b>';
  10.  
  11. ?>

Kod
wejście: p-34-91342367 n-24-1e24op6k.html s-56-90909090
wyjście: p-34-91342367 n-24.html s-56-90909090

Może coś takiego? guitar.gif

Te wspomniane 24 jest zmienną liczbą, ale ja traktuje, że zawsze jest liczbą 2-cyfrową. Jeśli nie, to należy zamienić ([0-9]{2}) na ([0-9])
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.