1. Podstawy budowania wyra e regularnych (Regex)



Podobne dokumenty
Opis programu do wizualizacji algorytmów z zakresu arytmetyki komputerowej

EGZAMIN MATURALNY Z INFORMATYKI

KRYTERIA OCENIANIA WYPOWIEDZI PISEMNYCH KRÓTKA I DŁUŻSZA FORMA UŻYTKOWA

PERSON Kraków

Arkusz zawiera informacje prawnie chronione do momentu rozpocz cia egzaminu.

Metoda LBL (ang. Layer by Layer, pol. Warstwa Po Warstwie). Jest ona metodą najprostszą.

Przygotowały: Magdalena Golińska Ewa Karaś

Podstawy Informatyki Gramatyki formalne

PRAWA ZACHOWANIA. Podstawowe terminy. Cia a tworz ce uk ad mechaniczny oddzia ywuj mi dzy sob i z cia ami nie nale cymi do uk adu za pomoc

Arkusz zawiera informacje prawnie chronione do momentu rozpocz cia egzaminu.

PROCEDURA REKRUTACJI DZIECI DO KLASY PIERWSZEJ DO SZKOŁY PODSTAWOWEJ W OSTASZEWIE NA ROK SZKOLNY 2015/2016

Arkusz zawiera informacje prawnie chronione do momentu rozpocz cia egzaminu.

Egzamin na tłumacza przysięgłego: kryteria oceny

SPECYFIKACJA ISTOTNYCH WARUNKÓW ZAMÓWIENIA DLA PRZETARGU NIEOGRANICZONEGO CZĘŚĆ II OFERTA PRZETARGOWA

SZABLONY KOMUNIKATÓW SPIS TREŚCI

Wybrane systemy czasu pracy : Podstawowy system czasu pracy, Równoważny system czasu pracy, Zadaniowy system czasu pracy, System skróconego tygodnia

Bazy danych. Andrzej Łachwa, UJ, /15

PROCEDURA REKRUTACJI DZIECI DO PRZEDSZKOLA NR 2 PROWADZONEGO PRZEZ URZĄD GMINY WE WŁOSZAKOWICACH NA ROK SZKOLNY 2014/2015

Komentarz technik ochrony fizycznej osób i mienia 515[01]-01 Czerwiec 2009

INSTRUKCJA DO INTERNETOWEGO ROZKŁADU JAZDY

Komentarz do prac egzaminacyjnych w zawodzie technik administracji 343[01] ETAP PRAKTYCZNY EGZAMINU POTWIERDZAJĄCEGO KWALIFIKACJE ZAWODOWE

Komunikat 16 z dnia dotyczący aktualnej sytuacji agrotechnicznej

KLAUZULE ARBITRAŻOWE

Archiwum Prac Dyplomowych

znaczeniu określa się zwykle graficzne kształtowanie tekstu za pomocą dostęp-

Instalacja. Zawartość. Wyszukiwarka. Instalacja Konfiguracja Uruchomienie i praca z raportem Metody wyszukiwania...

Zintegrowane Systemy Zarządzania Biblioteką SOWA1 i SOWA2 SKONTRUM

Instrukcja obsługi Norton Commander (NC) wersja 4.0. Autor: mgr inż. Tomasz Staniszewski

REGULAMIN OBRAD WALNEGO ZEBRANIA CZŁONKÓW STOWARZYSZENIA LOKALNA GRUPA DZIAŁANIA STOLEM

Surowiec Zużycie surowca Zapas A B C D S 1 0,5 0,4 0,4 0, S 2 0,4 0,2 0 0, Ceny x

Warszawska Giełda Towarowa S.A.

Regulamin reklamy produktów leczniczych na terenie Samodzielnego Publicznego Zakładu Opieki Zdrowotnej Ministerstwa Spraw Wewnętrznych w Białymstoku

Wprowadzam : REGULAMIN REKRUTACJI DZIECI DO PRZEDSZKOLA NR 14

Regulamin Obrad Walnego Zebrania Członków Stowarzyszenia Lokalna Grupa Działania Ziemia Bielska

Podstawy programowania

Projektowanie bazy danych

Zapytanie ofertowe nr 3

a) nazwa:... b) adres siedziby:... c) NIP:... REGON:... adres:...

Zasady wizualizacji PROW

Zalecenia dotyczące prawidłowego wypełniania weksla in blanco oraz deklaracji wekslowej

Instrukcja obsługi platformy zakupowej e-osaa (klient podstawowy)

Ogólna charakterystyka kontraktów terminowych

Harmonogramowanie projektów Zarządzanie czasem

Formularz Zgłoszeniowy propozycji zadania do Szczecińskiego Budżetu Obywatelskiego na 2016 rok

Regulamin Walnego Zebrania Członków Polskiego Towarzystwa Medycyny Sportowej

Projekty uchwał Nadzwyczajnego Walnego Zgromadzenia Akcjonariuszy

Procedura weryfikacji badania czasu przebiegu 1 paczek pocztowych

ZAPYTANIE OFERTOWE. Nazwa zamówienia: Wykonanie usług geodezyjnych podziały nieruchomości

XIII KONKURS MATEMATYCZNY

FORMULARZ OFERTOWY. DATA... NAZWA WYKONAWCY... SIEDZIBA... Telefon... Fax...

digilux 1.0 I N S T R U K C J A O B S Ł U G I

INSTRUKCJA TESTOWANIA USŁUG NA PLATFORMIE ELA-ENT

Rozliczenia z NFZ. Ogólne założenia. Spis treści

HAŚKO I SOLIŃSKA SPÓŁKA PARTNERSKA ADWOKATÓW ul. Nowa 2a lok. 15, Wrocław tel. (71) fax (71) kancelaria@mhbs.

POSTANOWIENIE z dnia 7 maja 2009 r. Przewodniczący:

Rekrutacją do klas I w szkołach podstawowych w roku szkolnym 2015/2016 objęte są dzieci, które w roku 2015 ukończą:

Spis treści. Dokument pochodzi ze strony LICZBY NATURALNE I UŁAMKI

14.Rozwiązywanie zadań tekstowych wykorzystujących równania i nierówności kwadratowe.

INSTRUKCJA WYPEŁNIANIA DEKLARACJI O WYSOKOŚCI OPŁATY ZA GOSPODAROWANIE ODPADAMI KOMUNALNYMI DLA DOMÓW OPIEKI, HOTELI, PENSJONATÓW, SZPITALI itp.

REGULAMIN SAMORZĄDU UCZNIOWSKIEGO GIMNAZJUM W ZABOROWIE UL. STOŁECZNA 182

Regulamin Drużyny Harcerek ZHR

WZÓR UMOWA Nr... zawarta w dniu...

Umowa nr.. /. Klient. *Niepotrzebne skreślić

Organizacja awansu zawodowego nauczycieli W ZESPOLE SZKÓŁ Z ODDZIAŁAMI INTEGRACYJNYMI W GŁOGOWIE

Zawarta w Warszawie w dniu.. pomiędzy: Filmoteką Narodową z siedzibą przy ul. Puławskiej 61, Warszawa, NIP:, REGON:.. reprezentowaną przez:

WYJASNIENIA I MODYFIKACJA SPECYFIKACJI ISTOTNYCH WARUNKÓW ZAMÓWIENIA

Gdynia, dnia r. pieczątka Zamawiającego ZAPYTANIE OFERTOWE

Wtedy wystarczy wybrać właściwego Taga z listy.

SYSTEMY TRANSAKCYJNE (TraderTeam.pl: Rafa Jaworski, Marek Matuszek) Lekcja XVI

Zadania powtórzeniowe I. Ile wynosi eksport netto w gospodarce, w której oszczędności równają się inwestycjom, a deficyt budżetowy wynosi 300?

Laboratorium nr 2. Edytory tekstu.

OSTRZEŻENIA DANE TECHNICZNE. Wbudowana bateria słoneczna oraz alkaliczna bateria manganowa (1,5 V LR44)

Wskazówki dotyczące przygotowania danych do wydruku suplementu

2.Prawo zachowania masy

PROCEDURA OCENY RYZYKA ZAWODOWEGO. w Urzędzie Gminy Mściwojów

Pracownia internetowa w ka dej szkole (edycja 2004/2005)

INSTRUKCJA OBSŁUGI URZĄDZENIA: HC8201

ZAPYTANIE OFERTOWE Dotyczące zakupu bawełnianych koszulek dziecięcych T-shirt z nadrukiem

Zebranie Mieszkańców Budynków, zwane dalej Zebraniem, działa na podstawie: a / statutu Spółdzielni Mieszkaniowej WROCŁAWSKI DOM we Wrocławiu,

Załącznik nr 7 do Umowy Nr z dnia r. Oświadczenie Podwykonawcy (WZÓR) W związku z wystawieniem przez Wykonawcę: faktury nr z dnia..

Procedura ewakuacji szkoły Cel procedury

Regulamin Rekrutacji do Publicznego Przedszkola Centrum Rozwoju Dziecka Berek! we Wrocławiu. Rozdział I Postanowienia ogólne

Logowanie do systemu Faktura elektroniczna

Organizator badania biegłości ma wdrożony system zarządzania wg normy PN-EN ISO/IEC 17025:2005.

Automatyczne przetwarzanie recenzji konsumenckich dla oceny użyteczności produktów i usług

Bielsko-Biała INSTRUKCJA DLA KOORDYNATORA PROJEKTU

Umowa o pracę zawarta na czas nieokreślony

Opole, dnia 30 marca 2015 r. Poz. 746 UCHWAŁA NR VIII/36/15 RADY GMINY STRZELECZKI. z dnia 26 marca 2015 r.

System Informatyczny CELAB. Przygotowanie programu do pracy - Ewidencja Czasu Pracy

ROZPORZ DZENIE MINISTRA TRANSPORTU 1) z dnia r.

Logowanie do mobilnego systemu CUI i autoryzacja kodami SMS

2 Zarządzenie wchodzi w życie z dniem podpisania.

Regulamin rekrutacji uczniów do klasy pierwszej Szkoły Podstawowej im. Maksymiliana Wilandta w Darzlubiu. Podstawa prawna: (Dz.U.2014 poz.

Warszawa, dnia 27 czerwca 2016 r. Poz. 916 ROZPORZĄDZENIE MINISTRA FINANSÓW 1) z dnia 21 czerwca 2016 r.

Instrukcja zarządzania systemem informatycznym służącym do przetwarzania danych osobowych

ZAPRASZA DO SKŁADNIA OFERT

Tabele możemy tworzyć wykorzystując wykorzystując następujące środowiska:

ZAPYTANIE OFERTOWE PRZEDMIOT ZAMÓWIENIA: DOSTAWA UŻYWANEGO SAMOCHODU DOSTAWCZEGO DLA ZAKŁADU WODOCIĄGÓW I KANALIZACJI W PACZKOWIE

Warszawa, dnia 11 marca 2016 r. Poz. 327 ROZPORZĄDZENIE. z dnia 7 marca 2016 r.

Transkrypt:

Dla wi kszo ci prostych gramatyk mo na w atwy sposób napisa wyra enie regularne które b dzie s u y o do sprawdzania poprawno ci zda z t gramatyk. Celem niniejszego laboratorium b dzie zapoznanie si z wyra eniami regularnymi (Regex) wyst puj cymi w j zyku C# oraz napisanie odpowiednich wyra e regularnych do sprawdzania poprawno ci zda z zadanymi gramatykami. 1. Podstawy budowania wyra e regularnych (Regex) Znaki:. $ ^ { [ ( ) ] } * +? \ s w wyra eniach regularnych znakami specjalnymi. Przy u yciu poni szych symboli mo na zaznaczy dopasowanie do 'klasy' znaków.. Dowolny znak [abc] Dowolny znak ze wskazanego zbioru [^abc] Dowolny znak ró ny od tych w zbiorze [a-z0-9] Dowolny znak z zakresu \w Dowolny znak typu: litera, cyfra, podkre lnik \W Dowolny znak inny ni : litera, cyfra, podkre lnik \s Dowolny bia y znak (spacja, ) \S Dowolny znak ró ny ni znak bia y \d Dowolna cyfra \D Dowolny znak inny ni cyfra 2

Przy u yciu poni szych symboli mo na zaznaczy miejsce w tek cie gdzie ma doj do dopasowania. ^ Dopasowanie musi si pojawi na pocz tku tekstu $ Dopasowanie musi si pojawi na ko cu tekstu \b Dopasowanie musi si znajdowa na pocz tku lub ko cu s owa \B Dopasowanie nie mo e si znajdowa na pocz tku ani ko cu s owa Za pomoc poni szych symboli mo na okre li ile razy dany znak (lub grupa znaków) ma wyst pi. * Zero lub wi cej razy + Jeden lub wi cej razy? Zero lub jeden raz {n} Dok adnie n razy {n,} Co najmniej n razy {n,m} Co najmniej n razy ale nie wi cej ni m razy Poni ej przedstawiono kilka innych elementów. \ Uko nik jest równie znakiem ucieczki, tzn. likwiduje znaczenie znaków specjalnych, np. \. Znaczy dos ownie kropka \0x20 Kod szesnastkowy znaku ASCII \u0020 Kod szesnastkowy znaku Unicode ( ) Nawiasy zwyk e u ywane s do grupowania symboli Pionowa kreska oznacza alternatyw Uwaga: Wyra enia regularne s wpisywane jako a cuchy znakowe (String), w których znak uko nika (\) ma równie specjalne znaczenie, dlatego wpisuj c wyra enie regularne nale y podwójnie wpisywa znak uko nika je li ma on pe ni funkcje znaku ucieczki. Tzn. zamiast wpisa \\ wpisujemy \\\\, ale je eli znak uko nika nie pe ni funkcji znaku ucieczki to wpisujemy normalnie np. \d. 3

Przyk ad dzia ania wyra e regularnych: - sprawdzanie kodu pocztowego: ^\d{2}-\d{3}$ - sprawdzenie adresu www: ^www\.[-\w]+(\.[-\w]+)+$ - sprawdzanie adresu IP: ^0*(25[0-5] 2[0-4]\d 1?\d\d?)(\.0*(25[0-5] 2[0-4]\d 1?\d\d?)){3}$ Je eli chcemy dokona dok adnego sprawdzenia zgodno ci wpisanego tekstu z wyra eniem regularnym to na pocz tku wyra enia regularnego musimy umie ci znak ^ a na jego ko cu znak $. Wi cej informacji o wyra eniach regularnych: http://www.codeguru.pl/article-696.aspx http://www.radsoftware.com.au/articles/regexlearnsyntax.aspx 2. Jak przej z definicji gramatyki na wyra enia regularne Do przej cia na wyra enia regularne najlepiej nadaj si gramatyki zapisane w notacji MBNF w której dochodz dodatkowe symbole: [ ] Oznacza wyst pienie jakiego symbolu zero lub jeden raz { } Oznacza wyst pienie jakiego symbolu nieokre lon ilo razy ( ) Oznacza grup symboli Przej cie z gramatyki na wyra enie regularne zostanie przedstawione na przyk adzie prostej gramatyki dla adresu e-mail. S:: A@ A.W A :: W{.W} W :: L{L} L :: a b c d e x y z Nast pnie nale y kolejno po podstawia do poszczególnych symboli. W rezultacie otrzymamy: S::=(a b c z){(a b c z)}{.(a b c z){(a b c z)}} @(a b c z){(a b c z)}{.(a b c z){(a b c z)}}.(a b c z){(a b c z)} 4

Z kolei ten zapis jest ju bez ma a wyra eniem regularnym: ^[a-z]+(\.[a-z]+)*@[a-z]+(\.[a-z]+)*\.[a-z]+$ Niestety je eli w gramatyce wyst puje rekurencyjne wywo anie jakiego symbolu, to nie mo na dokona podstawienia i nie da si zbudowa wyra enia regularnego do sprawdzenia tej gramatyki. Np. S:: W;{W;} W :: POP{OP} P :: O :: * L (W) / ^ Gdy podstawimy P do W to w W b dziemy mieli rekurencyjne odwo anie do W. i nie b dzie mo liwe dokonanie dalszych podstawie. 3. Program W trakcie laboratorium mo na korzysta z przygotowanego programu w którego jednym polu nale y wpisa wyra enie regularne a w drugim zdanie do sprawdzenie przy pomocy tego wyra enia regularnego. 5

4. Zadania Napisa wyra enia regularne dla sprawdzania zgodno ci zda z zadanymi gramatykami: S:: W;{W;} W :: LOL{OL} O :: * / ^ 12+2;3*8^12-2/3; S:: A[.L][eA] A :: [ ]L -15.6e-3 Wymy li gramatyk i napisa dla niej wyra enie regularne. 6