preg_match_all('/html" target="_blank">([A-Za-z ]*)<\/a><\/td>/', $tekst, $nick);
preg_match_all('/<\/a><\/td>\s*<td class="textright">([\d]*).<\/td>/i', $tekst, $lvl);
To po preg_match_all to czarna magia. W wierszu 4 chociaż widać class...
Cytat
Wyrażenia regularne cz 1
– 4:57 pm
Napisane w Regex
Komentarze są wyłączone
Składnia
zwyczajne znaki oznaczające wyłącznie siebie samego np. a, z, g, 1, 9, ! (nie mają żadnego innego znaczenia poza znaczeniem podstawowym)
znaki specjalne (metaznaki) mają specjalne znaczenie:
. dopasowanie dowolnego jednego znaku (łopatologicznie kropka oznacza dowolny jeden znak)
do wyrażenia a.a można dopasować aua, ala, ada
* dopasowanie zera lub większej liczby elementów poprzedzających
do wyrażenia w*akacje można dopasować akacje, wakacje, wwwwakacje
+ dopasowanie co najmniej jednego poprzedzającego elementu (łopatologicznie 1 lub więcej razy)
do wyrażenia nu+da można dopasować nuda, nuuda, nuuuuuuuuuda
? dopasowanie zera lub jednego poprzedzającego elementu
(łopatologicznie element poprzedzający może ale nie musi wystąpić)
do wyrażenie a?a można dopasować aa, a
() zapamiętanie zawartości nawiasu jako elementu
wyrażenie mieszkam na ulicy (Wesołej)
takie wyrażenie zapamięta wartość w nawiasie czyli Wesołej
[] dopasowanie jednego elementu z listy, wszystkie elementy listy muszą znaleźć się pomiędzy [ i ]. Uwaga! Pamiętaj, że każdy znak pomiędzy [] traktowany jest jako pojedynczy znak.
do wyrażenia [abcd]+ dopasujemy a, c, ab, acd, dac
- tworzenie zakresu w liście czyli tylko pomiędzy []
do wyrażenia [a-p] dopasujemy dowolną literę z przedziału a-p
| oznacza lub czyli alternatywę
do wyrażenia Kopernik był (kobietą|mężczyzną) dopasujemy zarówno Kopernik był kobietą jak i Kopernik był mężczyzną
^ dopasowanie do początku pola ( łopatologicznie znak następujący po ^ musi być początkiem wyrażenie w którym dokonywujemy dopasowania)
do wyrażenia ^Ala
dopasujemy Ala ma kota ale już nie dopasujemy Kot ma Ale
^ stosujemy także razem z [] w liście do wyrażenia negacji
do wyrażenia [^a]+ dopasujemy jakiekolwiek słowo które nie zawiera litery a np. kret, pies
$ dopasowanie do końca pola( łopatologicznie znak poprzedzający $ musi być końcem wyrażenie w którym dokonywujemy dopasowania)
do wyrażenia Ale$ dopasujemy zdanie Kot ma Ale ale nie dopasuje już Ale gorąco
\ oznacza anulowanie znaczenia wszystkich powyższych symboli (łopatologicznie wszystkie specjalne znaki po poprzedzeniu ich \ „tracą moc” i odzyskują podstawowe znaczenie)
\. lub \+
oznaczają tylko i wyłącznie kropkę i plus
Symbole formatujące tekst
\e oznacza escape
\n oznacza nową linię
\r oznacza powrót karetki
\t oznacza tabulację
\a oznacza alarm
Wbudowane klasy znaków( występują w parach \mała litera \duża litera, gdzie mała litera np \d (skrót od digit) to dowolna cyfra, a duża litera np \D dowolny znak nie będący \d czyli dowolny znak nie będący cyfrą)
\d dowolna cyfra
\D dowolny znak nie będący cyfrą
\s dowolny biały znak (np spacja)
\S dowolny znak nie będący białym znakiem
\w dowolny znak należący do słowa(cyfry, litery i znak _)
\W dowolny znak nie należący do słowa
Pozostałe klasy znaków
[[:digit:]] dowolny znak będący cyfrą
[[:alpha:]] dowolny znak będący literą
[[:alnum:]] dowolny znak będący literą lub cyfrą
[[:lower:]] dowolny znak będący małą literą
[[:upper:]] dowolny znak będący dużą literą
[[:punct:]] dowolny znak interpunkcyjny