Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [regexp] wyciągnięcie 3 danych ze stringa
Najki
post 21.01.2006, 16:33:41
Post #1





Grupa: Zarejestrowani
Postów: 190
Pomógł: 0
Dołączył: 12.02.2004
Skąd: Poznań

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


Mam np. takie stringi:
Kod
abc.pl-01_andrzej.png
onet.pl-09_roman.jpg
wp-wp-wp.eu.org-39_zygmunt.png

Chcę wyciągnąć z nich 3 dane:
Kod
abc.pl-01_andrzej.png
- abc.pl
- 01
- andrzej

onet.pl-09_roman.jpg
- onet.pl
- 09
- roman

wp-wp-wp.eu.org-39_zygmunt.png
- wp-wp-wp.eu.org
- 39
- zygmunt


Próbowałem tak:
  1. <?
  2. $string = str_replace('-', '__', $string); // aby zmieścić myślnik w modyfikatorze "w"
  3. preg_match_all('/([w].pl)__([d]{1,2})_([w]).([w]{3})/is', $string, $results);
  4. ?>


Jak nie trudno się domyślić - nie działa. Proszę o pomoc - poprawienie wyrażenia.


--------------------
Go to the top of the page
+Quote Post
crash
post 21.01.2006, 17:09:43
Post #2





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

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


  1. <?php
  2. $t = 'abc.pl-01_andrzej.png
  3. onet.pl-09_roman.jpg
  4. wp-wp-wp.eu.org-39_zygmunt.png';
  5.  
  6. preg_match_all( '/(.+?)-([0-9]+)_(.+?).[a-z]+/ie', $t, $o, PREG_SET_ORDER );
  7.  
  8. print_r( $o );
  9. ?>

Hmmm, nawet nie trzeba było bardzo kombinować...


--------------------
Go to the top of the page
+Quote Post
Najki
post 21.01.2006, 21:18:26
Post #3





Grupa: Zarejestrowani
Postów: 190
Pomógł: 0
Dołączył: 12.02.2004
Skąd: Poznań

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


Szczerze mówiąc nie działa mi to.


--------------------
Go to the top of the page
+Quote Post
crash
post 21.01.2006, 21:38:47
Post #4





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

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


Możliwe? Raczej nie smile.gif Sprawdziłem teraz na php 4.4.1, 5.0.5-dev i 6.0.0-dev. Wszędzie wynik:
Kod
Array
(
    [0] => Array
        (
            [0] => abc.pl-01_andrzej.png
            [1] => abc.pl
            [2] => 01
            [3] => andrzej
        )

    [1] => Array
        (
            [0] => onet.pl-09_roman.jpg
            [1] => onet.pl
            [2] => 09
            [3] => roman
        )

    [2] => Array
        (
            [0] => wp-wp-wp.eu.org-39_zygmunt.png
            [1] => wp-wp-wp.eu.org
            [2] => 39
            [3] => zygmunt
        )

)


--------------------
Go to the top of the page
+Quote Post
Najki
post 21.01.2006, 22:01:19
Post #5





Grupa: Zarejestrowani
Postów: 190
Pomógł: 0
Dołączył: 12.02.2004
Skąd: Poznań

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


Sorry, mój błąd :/. Mój kod analizował string z "-" zamienionymi na "__" i nie usunąłem tej linijki z str_replace :/. Przepraszam raz jeszcze, bo kod faktycznie działa. Dzięki wielkie.


--------------------
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: 18.07.2025 - 03:01