Pokazywanie postów oznaczonych etykietą PHP_wyrazenia_regularne. Pokaż wszystkie posty
Pokazywanie postów oznaczonych etykietą PHP_wyrazenia_regularne. Pokaż wszystkie posty

środa, 17 czerwca 2015

[PHP][RegEx] Podstawy wyrażeń regularnych cz.1

TRUE
1888640682065359108
Wyrażenia regularne (regular expressions) to obszerny temat, ale raz zrozumiany przydaje się ogromnie w każdym projekcie i w każdym języku programowania. W skrócie jest to wzorzec, który dopasowujemy do zadanego ciągu znaków. Od zwykłego porównywania dwóch ciągów tekstowych różni się tym, że w przypadku wyrażenia regularnego podajemy wzorzec (pattern), a nie drugi ciąg. Wzorzec taki następnie może być dopasowany do więcej niż jednego ciągu tekstowego. Za pomocą wyrażenia regularnego dopasowywać możemy litery, cyfry, znaki interpunkcyjne i specjalne, w tym te "niewidzialne", jak tabulacja, czy znak nowej linii. Mają zastosowanie wszędzie tam, gdzie występuje konieczność sprawdzenia, czy dany ciąg znaków pasuje do zadanego wzorca, np. czy jest on poprawnym adresem emial, bądź adresem URL. Stosowane są praktycznie na każdym kroku. W sieci jest cała masa testerów on-line, jeśli chodzi o poprawność wyrażeń. Polecam do zabawy, kilka z nich znajdziemy tutaj, w dziale QuickLinks.

1. Ograniczniki - /

Każde wyrażenie regularne powinno zostać objęte w ogranicznik na początku i końcu wyrażenia. Takim ogranicznikiem zazwyczaj jest slash ( / ), ale może to być również inny znak. Przyjęło się jednak, że jako ogranicznik stosujemy / i tego się trzymajmy. Proste wyrażenie regularne może mieć więc następującą postać:
[code]/kot/[/code]
gdzie kot to wzorzec dopasowania, a / na początku i końcu to ograniczniki. Wyrażenie takie pasować będzie do każdego ciągu tekstowego, w którym występować będzie słowo kot.
Pasować będzie do wszystkich trzech poniższych ciągów:
[code]Ala ma kota.[/code]
[code]Ala ma kota i Ola ma kota.[/code]
[code]kot ma na imię Mruczek[/code]
[code]Te koty mają po 4 lata.[/code]
Nie ma znaczenia, czy ciąg kot występuje tutaj na początku, na końcu, czy w środku badanego ciągu tekstowego oraz ile razy wystąpi, ma jednak znaczenie wielkość liter. Powyższe wyrażenie nie dopasuje się już więc do ciągu:
[code]Kot jest szary.[/code]
W powyższym zdaniu Kot != kot.
Zachowanie funkcji dopasowującej możemy zmienić za pomocą dodatkowych parametrów, tak aby ignorowała wielkość liter i dopasowała słowo kot zarówno do kot, Kot, jak i KoT, ale o tym w kolejnej części.
webmaester.pl - profesjonalne projektowanie WWW i webaplikacji
webmaester.pl - profesjonalne projektowanie WWW i webaplikacji