2012-09-24 8 views
5

Zawsze jestem mylony z formatem Regex, jak działają i jak zrobić Regex zgodnie z moimi wymaganiami. Po prostu kopiuję niektóre popularne formaty Regex i wklejam je do mojego projektu, ale oczywiście nie możemy znaleźć każdego formatu Regex zgodnie z naszymi wymaganiami. Chciałbym więc poznać Regex.Jak zrobić Regex w Objective-C

robię to tylko z moim przypuszczeniem po kodzie biegu znowu i znowu, ale nadal nie wiem tak wiele o tym Regex

NSString *regexNumber = @"[123456789][0-9]{0}([0-9]{1})?"; 

To porównanie Age, według tego wieku należy rozpocząć od 1-9, minimum 1 cyfra, maksymalnie 2 cyfry i tylko cyfry.

Teraz chcę uczynić regex Nazwa - (exp - vakul, Vakul, vakul Saini, Vakul Saini, vakul Saini, Vakul Saini itd.), email, Numer telefonu, String Tylko , Urodziny, URL. Ale nie chcę kopiować i wklejać, chcę się dowiedzieć, jak działają i jak tworzyć własne Regex.

+6

http://www.regular-expressions.info/ –

Odpowiedz

7

Wyrażenie regularne jest wzorcem tekst składający się z kombinacji znaków alfanumerycznych i znaków specjalnych, znanych jako metaznakami

Metaznaki są :

\ | () [ {^$ * + ? . < > 

. ---- Jest to specjalna metaznak, który pasuje do dowolnej postaci.

* ---- Znak * oznacza zero lub więcej wystąpień znaku w wierszu.

+ ---- Znak + jest podobny do *, ale pasuje do jednego lub więcej.

? ---- zero lub jeden przykład postaci

{m,n} ---- oznacza dopasowania m lub do n znaków. np {1,5} mecze 1 lub upto 5 znaków

^ ---- byłoby dopasować dowolną linię, która rozpoczęła się od słowa po nim

$ --- byłoby dopasować dowolną linię, która kończy się słowem po to

<> --- dopasowuje słowa między nimi. Na przykład. zwraca wszystkie słowa, które zawierają abc

Można tworzyć grupy lub podwyrażeń, ponieważ są one często nazywane, stosując początek i koniec nawiasów znaki: () The (uruchamia podwyrażenie a) Kończy się

| - - Lub Parametr

[ and ] --- Sekwencja znaków.Wszelkie znaki umieszczone w nawiasach sekwencji są traktowane jako znaki literalne, nawet metaznaki. Jedynymi znakami specjalnymi są - oznaczające zakresy znaków i ^, które są używane do zanegowania sekwencji. na przykład. [a-z]

Jest to najbardziej podstawowa wiedza potrzebna do wyrażeń regularnych i są one takie same dla prawie wszystkich języków.

Szczegółowe informacje można odnieść this link

+0

iOS używa zmodyfikowanej wersji biblioteki ICU 4.2.1. Dokumentacja API znajduje się pod adresem http://icu-project.org/apiref/icu4c/index.html – ZhangChn

+0

Już wspomniałem: "Jest to najbardziej podstawowa wiedza potrzebna do wyrażeń regularnych i są one takie same dla prawie wszystkich języków." Te działają również w ios, prawie wszystkie – DivineDesert

+0

@ CrazyCreator - Nice Wyjaśnienie! Dzięki :) – TheTiger

0

należy użyć Regexkit Framework, uważam, że to najlepsze rozwiązanie dla regex w iOS

+0

Dzięki @iYaniv - byłoby mnie nauczyć jak zrobić Regex ??? Nie chcę kopiować innych Regeksów, ponieważ nikt nie może dać mi każdego formatu Regex, czego potrzebuję. Więc chcę nauczyć się tworzyć własne ... – TheTiger

+0

przejdź do http://www.regular-expressions.info – Janub

+1

@Daniel Hilgarth podałem już ten link zobacz pierwszy komentarz tego pytania ..... To jest dobre link do nauki .. – TheTiger