Wyrażenia regularne: Różnice pomiędzy wersjami
Przejdź do nawigacji
Przejdź do wyszukiwania
(d) |
|||
(Nie pokazano 12 pośrednich wersji utworzonych przez tego samego użytkownika) | |||
Linia 1: | Linia 1: | ||
'''wyrażenia regularne''' (''regular expressions'') - pochodząca z systemów Unix konwencja definiowania napisów, obecnie rozpowszechniona w wielu edytorach. | '''wyrażenia regularne''' (''regular expressions'') - pochodząca z systemów Unix konwencja definiowania napisów, obecnie rozpowszechniona w wielu edytorach. | ||
− | ''' | + | '''Wybrane zasady tworzenia wyrażeń regularnych''' |
* '''.''' - dowolny jeden znak | * '''.''' - dowolny jeden znak | ||
* '''$''' - koniec linii; | * '''$''' - koniec linii; | ||
* '''^''' - początek linii; | * '''^''' - początek linii; | ||
− | * '''[z-Z]''' - wystąpienie znaku od z do Z w porządku leksykograficznym; | + | * '''?''' - poprzedni znak wystąpi co najwyżej raz; |
− | * '''[n-N]''' - wystąpienie cyfry od n do N w porządku leksykograficznym; | + | * '''|''' - albo dla wystąpienia wzorca sprzed i po tym znaku; |
+ | * '''+''' - poprzedni znak występuje co najmniej raz | ||
+ | * '''[^xyz]''' - zaprzeczenie listy wymienionych znaków '''xyz'''; | ||
+ | * '''[z-Z]''' - wystąpienie znaku od '''z''' do '''Z''' w porządku leksykograficznym; | ||
+ | * '''[n-N]''' - wystąpienie cyfry od '''n''' do '''N''' w porządku leksykograficznym; | ||
+ | * '''(...)''' - definiowanie \n-tego wzorca (n=1..9), do dalszych operacji wywoływanego jako '''\1''', ...'''\9''' | ||
+ | * '''{m,n}''' - wystąpienie poprzedzającego znaku nie mniej niż '''m''' razy i nie więcej niż '''n''' razy; | ||
+ | * '''\''' - znak pozwalający traktować następujący po nim znak sterujący '''^$+.|[{(''' itp jako zwykły znak. | ||
+ | |||
+ | '''Przykład 1.''' | ||
+ | |||
+ | * '''(<td>[a-Z]+</td>)(<td>[0-9]+</td>)''' - wyszukiwanie w HTML sąsiadujących obok komórek tabeli najpierw literowych - i następujących po nich komórek cyfrowych | ||
+ | * '''\2\1''' - w komendzie zamień (''replace'') przestawienie wzorców wyszukanych w poprzedzającym algorytmie szukania | ||
+ | |||
+ | '''Przykład 2.''' | ||
+ | * '''^\(([0-9]+)\)''' - wyszukanie wzorca - dowolny ciąg cyfr w nawiasach (.), występujacego na początku linii | ||
+ | * '''(\1)''' - powtórzenie tego wzorca otoczonego znakami <nowiki>'''</nowiki> z obydwu stron | ||
+ | |||
+ | '''Przykład 3.''' | ||
+ | * '''dziennikar(z|ka)''' - przedstawienie wzorca alternatywnego dla dwóch słów: ''dziennikarz'' oraz ''dziennikarka'' | ||
+ | |||
+ | |||
'''Zobacz także:''' | '''Zobacz także:''' | ||
* [[GREP]] | * [[GREP]] | ||
+ | * [http://regexpal.com tester wyrażeń regularnych] | ||
[[Kategoria:terminologia IT]] | [[Kategoria:terminologia IT]] | ||
[[kategoria:techniczna]] | [[kategoria:techniczna]] |
Aktualna wersja na dzień 01:27, 18 sty 2024
wyrażenia regularne (regular expressions) - pochodząca z systemów Unix konwencja definiowania napisów, obecnie rozpowszechniona w wielu edytorach.
Wybrane zasady tworzenia wyrażeń regularnych
- . - dowolny jeden znak
- $ - koniec linii;
- ^ - początek linii;
- ? - poprzedni znak wystąpi co najwyżej raz;
- | - albo dla wystąpienia wzorca sprzed i po tym znaku;
- + - poprzedni znak występuje co najmniej raz
- [^xyz] - zaprzeczenie listy wymienionych znaków xyz;
- [z-Z] - wystąpienie znaku od z do Z w porządku leksykograficznym;
- [n-N] - wystąpienie cyfry od n do N w porządku leksykograficznym;
- (...) - definiowanie \n-tego wzorca (n=1..9), do dalszych operacji wywoływanego jako \1, ...\9
- {m,n} - wystąpienie poprzedzającego znaku nie mniej niż m razy i nie więcej niż n razy;
- \ - znak pozwalający traktować następujący po nim znak sterujący ^$+.|[{( itp jako zwykły znak.
Przykład 1.
- ([a-Z]+)([0-9]+) - wyszukiwanie w HTML sąsiadujących obok komórek tabeli najpierw literowych - i następujących po nich komórek cyfrowych
- \2\1 - w komendzie zamień (replace) przestawienie wzorców wyszukanych w poprzedzającym algorytmie szukania
Przykład 2.
- ^\(([0-9]+)\) - wyszukanie wzorca - dowolny ciąg cyfr w nawiasach (.), występujacego na początku linii
- (\1) - powtórzenie tego wzorca otoczonego znakami ''' z obydwu stron
Przykład 3.
- dziennikar(z|ka) - przedstawienie wzorca alternatywnego dla dwóch słów: dziennikarz oraz dziennikarka
Zobacz także: