Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] Jak skonstrułować wyrazenie regularne ([^href]+)
Octobus
post 29.12.2011, 12:34:59
Post #1





Grupa: Zarejestrowani
Postów: 259
Pomógł: 1
Dołączył: 3.07.2011

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


Witam. Muszę napisać wyrażenie regularne do linków a poza często zastaawaim się jak zrobić taki warunek ([^href]+) czyli np a href gdzie pomiędzy a a href może być cokolwiek. Nie wiem czy dobrze to wytłumaczyłęm, warunek ma się wykonywać dla
Kod
a href
a hclass href
a alt="" href
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
by_ikar
post 2.01.2012, 08:59:06
Post #2





Grupa: Zarejestrowani
Postów: 1 798
Pomógł: 307
Dołączył: 13.05.2009
Skąd: Gubin/Wrocław

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


Czyli potrzebujesz wyciągnąć nazwę użytkownika z konkretnego adresu? Jeżeli tak, to nie potrzebujesz do tego łapać całego tagu, i podawać mu mniej więcej treść jaka może być w środku. Wystarczy że złapiesz to co ci jest potrzebne, czyli samego usera:

Kod
#user=([^"]+)#is


  1. <?php
  2.  
  3. $str = '
  4. <a href="/user=kdas">
  5. <a href="index.php/user=kdas">
  6. <a href="folder/index.php/user=kdas">
  7. <a href="/katalog/folder/user=kdas">
  8. ';
  9.  
  10. preg_match_all('#user=([^"]+)#is', $str, $matches);
  11.  
  12. echo '<pre>'.print_r($matches, true).'</pre>';


Kod
Array
(
    [0] => Array
        (
            [0] => user=kdas
            [1] => user=kdas
            [2] => user=kdas
            [3] => user=kdas
        )

    [1] => Array
        (
            [0] => kdas
            [1] => kdas
            [2] => kdas
            [3] => kdas
        )

)


No chyba że potrzebujesz cały adres i wszystkie informacje jakie w adresie są. Wtedy będziesz musiał łapać cały adres wink.gif
Go to the top of the page
+Quote Post

Posty w temacie


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: 14.06.2025 - 12:01