Wyrażenie regularne

Wyrażenie regularne (lub „regex”) to wzorzec wyszukiwania używany do dopasowywania co najmniej jednego znaku w obrębie ciągu znaków. Może dopasowywać określone znaki, symbole wieloznaczne i zakresy znaków. Wyrażenia regularne były pierwotnie używane przez narzędzia systemu Unix, takie jak vi i grep. Obecnie są jednak obsługiwane przez wiele aplikacji do edycji kodu i edytorów tekstu na wielu platformach. Wyrażeń regularnych można również używać w większości najważniejszych języków programowania.

Wyrażenie regularne może być tak proste jak podstawowy ciąg znaków, na przykład „app”. Regex „app” dopasuje ciągi zawierające słowa „apps”, „applications” i „inapplicable”. Wyrażenie regularne może również zawierać znaki kotwiczące („^” i „$”), które służą odpowiednio do określania początku i końca wiersza. Dlatego regex „^apps” dopasuje ciąg „apps are great,”, ale nie dopasuje ciągu „I like apps.”

Wyrażenia regularne mogą zawierać myślniki, które służą do dopasowywania zakresu znaków, na przykład wszystkich małych liter. Regex „[a-z]” dopasuje na przykład „apps”, ale nie dopasuje ciągów „Apps” ani „123”. Regex „[A-Za-z]” dopasuje „Apps”, a [0-9] dopasuje „123”. Kropka, będąca standardowym znakiem wieloznacznym w wyrażeniach regularnych, może służyć do dopasowania dowolnego znaku (z wyjątkiem znaku końca wiersza). Kropka po której następuje gwiazdka (.*), dopasowuje zero lub więcej wystąpień, natomiast kropka po której następuje znak plus (.+), dopasowuje jedno lub więcej wystąpień.

Co się jednak dzieje, gdy trzeba dopasować ciąg zawierający myślnik, gwiazdkę, znak plus lub znak kotwiczący? Znaki te można umieścić we wzorcu wyrażenia regularnego, „poprzedzając” je ukośnikiem odwrotnym („\”). Na przykład aby wyszukać „$0.99”, regex wyglądałby tak: „\$0\.99”. Ukośniki odwrotne służą również do wyszukiwania znaków niedrukowalnych. Na przykład „\r” dopasowuje znak powrotu karetki, „\n” dopasowuje znak nowego wiersza, a „\t” dopasowuje znak tabulacji.

Utworzenie podstawowego wyrażenia regularnego nie wymaga dużego wysiłku, ale napisanie zaawansowanego regexu nie jest łatwym zadaniem. Nawet najlepsi programiści rzadko tworzą złożone wyrażenia regularne poprawnie za pierwszym razem. Prawidłowo używane wyrażenia regularne są jednak potężnym narzędziem do wyszukiwania, znajdowania i zastępowania określonego tekstu.

Zaktualizowano August 19, 2013 przez Per C.

quizSprawdź swoją wiedzę

The maximum data transfer rate of a Cat 5e cable is how much faster than Cat 5?

A
10
0%
B
100
0%
C
1,000
0%
D
10,000
0%
Correct! Incorrect!     View the Cat 5e definition.
More Quizzes →

Słownik komputerowy Tech Terms

Definicja Wyrażenie regularne na tej stronie jest oryginalną definicją napisaną przez autorów TechTerms.com. Jeśli chcesz odwołać się do tej strony lub zacytować tę definicję, użyj zielonego paska cytowania bezpośrednio poniżej definicji.

Naszym celem jest wyjaśnianie terminologii komputerowej w prosty i zrozumiały sposób. Dążymy do dokładności i prostoty w każdej publikowanej definicji. Jeśli masz uwagi lub chcesz zaproponować nowy termin techniczny, skontaktuj się z nami.

Newsletter Tech Terms

Poszerzaj swoją wiedzę techniczną dzięki naszemu codziennemu lub tygodniowemu newsletterowi! Subskrybuj już dziś i otrzymuj nowe terminy oraz quizy prosto do skrzynki odbiorczej.

Zapisz się do bezpłatnego newslettera TechTerms

Jak często chcesz otrzymywać e-maile?

Możesz wypisać się lub zmienić częstotliwość w dowolnym momencie, korzystając z linków w każdym e-mailu. Pytania? Skontaktuj się z nami.

Uwaga: Newsletter jest wysyłany w języku angielskim.