Wyrażenia regularne: Różnice pomiędzy wersjami

Z DisWiki
Przejdź do nawigacji Przejdź do wyszukiwania
(przykład 2)
(x)
Linia 22: Linia 22:
  
 
'''Przykład 2.'''  
 
'''Przykład 2.'''  
* '''^\(([0-9]+)\)''' - wyszukanie wzorca - dowolny ciąg cyfr w nawiasach (.), na początku linii
+
* '''^\(([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
 
* '''(\1)''' - powtórzenie tego wzorca otoczonego znakami <nowiki>'''</nowiki> z obydwu stron
  

Wersja z 01:45, 14 paź 2019

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



Zobacz także: