Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php]Pomoc w napisaniu wyrażenia regularnego
arzach
post
Post #1





Grupa: Zarejestrowani
Postów: 332
Pomógł: 6
Dołączył: 27.11.2008

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


Witam potrzebuje pomoc w napisaniu wyrażenia regularnego z takiego ciągu
  1. $txt = "alias.url = (\"/phpmyadmin\" => \"E:/LiMP/apps/phpmyadmin\",\"/servmanager\" => \"E:/LiMP/apps/servmanager\")";


by dostać taką tablice

Kod
Array
(
    [0] => Array
        (
            [0] => /phpmyadmin
            [1] => E:/LiMP/apps/phpmyadmin
        )

    [1] => Array
        (
            [0] => /servmanager
            [1] => E:/LiMP/apps/servmanager
        )

)


Próbowałem sam napisać ale nie wychodzi mi napisałem takie coś ale nie działa
Kod
"/(.*?)\"|\"(.*?)"


Ten post edytował arzach 30.06.2011, 08:46:35
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 3)
korex
post
Post #2





Grupa: Zarejestrowani
Postów: 36
Pomógł: 4
Dołączył: 2.02.2008

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


  1. $tablica= array(
  2. array('/phpmyadmin', 'E:/LiMP/apps/phpmyadmin'),
  3. array('/servmanager1', 'E:/LiMP/apps/servmanager')
  4. );
Go to the top of the page
+Quote Post
arzach
post
Post #3





Grupa: Zarejestrowani
Postów: 332
Pomógł: 6
Dołączył: 27.11.2008

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


Dzięki za pomoc ale chyba nie zrozumiałeś o co mi chodzi. Chodzi mi o wyciągniecie tych danych z tego
  1. $txt = "alias.url = (\"/phpmyadmin\" => \"E:/LiMP/apps/phpmyadmin\",\"/servmanager\" => \"E:/LiMP/apps/servmanager\")";


za pomocą preg_match i dane te mogą być za każdym razem rożne.
Go to the top of the page
+Quote Post
Sephirus
post
Post #4





Grupa: Zarejestrowani
Postów: 1 527
Pomógł: 438
Dołączył: 28.06.2011
Skąd: Warszawa

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


Kod:

  1. $txt = "alias.url = (\"/phpmyadmin\" => \"E:/LiMP/apps/phpmyadmin\",\"/servmanager\" => \"E:/LiMP/apps/servmanager\")";
  2.  
  3. preg_match_all('/"(\/[^"]+)"\s=>\s"([^"]+)"/si',stripslashes($txt),$match);
  4.  
  5. $tablica = array();
  6.  
  7. for($i = 0; $i < count($match[1]); $i++)
  8. $tablica[] = array($match[1][$i],$match[2][$i]);
  9.  
  10. print_r($tablica);


daje w rezultacie:

Kod
Array
(
    [0] => Array
        (
            [0] => /phpmyadmin
            [1] => E:/LiMP/apps/phpmyadmin
        )

    [1] => Array
        (
            [0] => /servmanager
            [1] => E:/LiMP/apps/servmanager
        )

)


HTH! (IMG:style_emoticons/default/wink.gif)
Go to the top of the page
+Quote Post

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: 25.08.2025 - 06:51