Znaki regularne | Opis |
---|---|
\ | Oznacza następny znak jako znak specjalny, znak dosłowny, cudzysłów lub ucieczkę ósemkową. Na przykład "n " dopasowuje znak "n "。"\n " oznacza znak nowej linii. Serial"\\ " dopasowuje "\ " i "\( "pasuje"( "。 |
^ | dopasowuje początek ciągu wejściowego. Jeśli ustawiona jest właściwość Multiline obiektu RegExp, ^ dopasowuje również "\n " lub "\r ", po którym następuje pozycja. |
$ | pasuje do pozycji końcowej ciągu wejściowego. Jeśli właściwość Multiline obiektu RegExp jest ustawiona, $ pasuje również do "\n " lub "\r " przed pozycją. |
* | Dopasowuje poprzedzające podwyrażenie zero lub więcej razy. Na przykład, zo* może dopasować "z " jak również "zoo ". * jest odpowiednikiem {0,}. |
+ | Dopasowuje poprzedzające podwyrażenie jeden lub więcej razy. Na przykład, "zo+ " może dopasować "zo ", jak również "zoo ", ale nie może dopasować "z ". + jest odpowiednikiem {1,}. |
? | Dopasowuje poprzedzające podwyrażenie zero lub jeden raz. Na przykład, "do(es)? " może pasować do "does " lub "does " w "do ".? Odpowiednik {0,1}. |
{n} | n jest nieujemną liczbą całkowitą. Dopasowanie jest określanen razy. Na przykład, "o{2} " nie może pasować do "Bob " w "o ", ale może dopasować oba o w "food " w obu o. |
{n,} | n jest nieujemną liczbą całkowitą. Dopasowanie co najmniejn razy. Na przykład, "o{2,} " nie może pasować do "Bob " w "o ", ale może dopasować wszystkie o w "foooood " dla wszystkich o w " "."o{1,} "jest równoważne "o+ "。"o{0,} " jest równoważne "o* "。 |
{n,m} | m orazn są nieujemnymi liczbami całkowitymi, gdzien<=m . Dopasowanie co najmniejn razy i co najwyżejm razy. Na przykład, "o{1,3} " dopasowałoby pierwsze trzy o w "fooooood " dla pierwszych trzech o w "o{0,1} " jest równoważne "o? ". Należy pamiętać, że między przecinkiem a dwiema liczbami nie może być spacji. |
? | Gdy po tym znaku następuje bezpośrednio którykolwiek z innych znaków ograniczenia (*,+,? , {n},{n,},{n,m }), wzorzec dopasowania jest niedostosowany. Wzorzec non-greedy dopasowuje jak najmniejszą liczbę wyszukiwanych ciągów, podczas gdy domyślny wzorzec greedy dopasowuje jak najwięcej wyszukiwanych ciągów. Na przykład, dla ciągu "oooo ","o+? " zostanie dopasowany pojedynczy ciąg "o ", podczas gdy "o+ " dopasuje wszystkie "o "。 |
. | dopasuje dowolny pojedynczy ciąg z wyjątkiem "\ n " dla dowolnego pojedynczego znaku z wyjątkiem " ". Aby dopasować dowolny znak, w tym "\ n ", należy użyć wzorca takiego jak "(.|\n) " wzorzec. |
(pattern) | Dopasowuje wzorzec i uzyskuje to dopasowanie. Wynikowe dopasowanie można uzyskać z wynikowej kolekcji Matches, używając kolekcji SubMatches w VBScript lub atrybutu $0...$9 w JScript. Aby dopasować znaki nawiasów, należy użyć "\( " lub "\) "。 |
(?:pattern) | dopasowuje wzorzec, ale nie pobiera wyniku, tj. jest to dopasowanie niepobierane, które nie jest przechowywane do późniejszego wykorzystania. Odbywa się to poprzez użycie znaku lub "(|) ", aby połączyć części wzorca. Na przykład, "industr(?:y|ies) " jest krótszym wyrażeniem niż "industry|industries " jest bardziej skróconym wyrażeniem. |
(?=pattern) | Pozytywne twierdzące sprawdzenie wstępne, które dopasowuje ciąg wyszukiwania na początku dowolnego ciągu pasującego do wzorca. Jest to dopasowanie bez pobierania, co oznacza, że dopasowanie nie musi być pobierane do późniejszego użycia. Na przykład, "Windows(?=95|98|NT|2000) " może pasować do "Windows2000 " w "Windows ", ale nie może pasować do "Windows3.1 " w "Windows ". Wstępne sprawdzenia nie zużywają znaków, tzn. po wystąpieniu dopasowania wyszukiwanie następnego dopasowania rozpoczyna się natychmiast po ostatnim dopasowaniu, a nie po znaku zawierającym wstępne sprawdzenie. |
(?!pattern) | Pozytywne negatywne sprawdzenia wstępne dopasowują ciąg wyszukiwania na początku każdego ciągu, który nie pasuje do wzorca. Jest to dopasowanie bez pobierania, co oznacza, że dopasowanie nie musi być pobierane do późniejszego użycia. Na przykład, "Windows(?!95|98|NT|2000) " może pasować do "Windows3.1 " w "Windows ", ale nie może pasować do "Windows2000 " w "Windows ". Wstępne sprawdzenia nie zużywają znaków, tj. po wystąpieniu dopasowania wyszukiwanie następnego dopasowania rozpoczyna się natychmiast po ostatnim dopasowaniu, a nie po znaku zawierającym wstępne sprawdzenie |
(?<=pattern) | Wstępne sprawdzenia potwierdzające w odwrotnym kierunku są analogiczne do wstępnych sprawdzeń potwierdzających w przód, z wyjątkiem odwrotnego kierunku. Na przykład, "(?<=95|98|NT|2000)Windows " może odpowiadać "2000Windows " w "Windows ", ale nie może pasować do "3.1Windows " w " ".Windows "。 |
(?<!pattern) | Odwrotne ujemne warunkowanie wstępne jest analogiczne do wstępnego ujemnego warunkowania wstępnego, z wyjątkiem odwrotnego kierunku. Na przykład, "(?<!95|98|NT|2000)Windows " może pasować do "3.1Windows " w "Windows ", ale nie może pasować do "2000Windows " w " ".Windows "。 |
x|y | pasuje do x lub y. Na przykład, "z|food " może pasować do "z " lub "food "。"(z|f)ood ", a następnie pasuje do "zood " lub "food "。 |
[xyz] | Zestaw znaków. Dopasowuje dowolny z podanych znaków. Na przykład, "[abc] " może pasować do "plain " w zestawie znaków "a "。 |
[^xyz] | Negatywny zestaw znaków. Dopasowuje dowolny nieuwzględniony znak. Na przykład, "[^abc] " może pasować do "plain " w "p "。 |
[a-z] | zakres znaków. Dopasowuje dowolny znak w określonym zakresie. Na przykład, "[a-z] " może dopasować znaki od "a " do "z " dla dowolnego małego znaku w zakresie. |
[^a-z] | Ujemny zakres znaków. Dopasowuje dowolny znak spoza określonego zakresu. Na przykład, "[^a-z] " może dopasować dowolny znak spoza zakresu od "a " do "z " zakres dowolnych znaków. |
\b | Dopasowuje granicę słowa, co oznacza pozycję między słowem a spacją. Na przykład, "er\b " może dopasować "never " w "er ", ale nie może dopasować "verb " w " ".er "。 |
\B | dopasowuje granice niebędące słowami. "er\B " może pasować do "verb " w "er ", ale nie może dopasować "never " w " ".er "。 |
\cx | Dopasowuje znak sterujący określony przez x. Na przykład \cM pasuje do Control-M lub znaku powrotu karetki. x musi mieć wartość jednego z A-Z lub a-z. W przeciwnym razie należy traktować c jako oryginalny znak "c ". |
\d | Dopasowuje znak numeryczny. Odpowiednik [0-9]. |
\D | Dopasowuje znak nienumeryczny. Odpowiednik [^0-9]. |
\f | Dopasowuje znak podziału strony. Odpowiednik \x0c i \cL. |
\n | Dopasowanie znaku podawania wiersza. Odpowiednik znaków \x0a i \cJ. |
\r | Dopasowanie znaku powrotu karetki. Odpowiednik \x0d i \cM. |
\s | Dopasowuje dowolny biały znak, w tym spacje, tabulatory, podziały stron itp. Odpowiednik [ \f\n\r\t\v]. |
\S | Dopasowuje dowolny znak niebędący spacją. Odpowiednik [ ^ \f\n\r\t\v]. |
\t | Dopasowuje znak tabulacji. Odpowiednik znaków \x09 i \cI. |
\v | Dopasowuje pionowy znak tabulacji. Odpowiednik znaków \x0b i \cK. |
\w | Dopasowuje dowolny znak słowa zawierający podkreślenie. Odpowiednik "[A-Za-z0-9_] "。 |
\W | Dopasowuje dowolny znak niebędący słowem. Odpowiednik "[^A-Za-z0-9_] "。 |
\xn | Pasuje don gdzien jest szesnastkową wartością ucieczki. Szesnastkowa wartość ucieczki musi składać się z dwóch cyfr. Na przykład, "\x41 " odpowiada "A "。"\x041 " byłoby równoważne "\x04&1 ". Kodowanie ASCII może być używane w wyrażeniach regularnych. |
\num | Dopasowanienum gdzienum jest dodatnią liczbą całkowitą. Odniesienie do uzyskanego dopasowania. Na przykład, "(.)\1 " dopasowuje dwa kolejne identyczne znaki. |
\n | Identyfikuje ósemkową wartość escape lub odwołanie wstecz. Jeśli \n jest poprzedzone przez co najmniejn pobierane są podwyrażenia, wówczasn jest odwołaniem wstecznym. W przeciwnym razie, jeślin jest liczbą ósemkową (0-7), ton jest unikodową wartością ósemkową. |
\nm | Identyfikuje ósemkową wartość escape lub odwołanie wstecz. Jeśli \nm jest poprzedzone co najmniejnm podwyrażeniem get, tonm jest odwołaniem wstecz. Jeśli \nm było poprzedzone przez co najmniejn liczba przejęć, ton jest odwołaniem wstecznym, po którym następuje tekstm odwołania wstecznego. Jeśli żaden z poprzednich warunków nie jest spełniony, jeślin im są liczbami ósemkowymi (0-7), wówczas \nm będzie pasować do wartości ucieczki ósemkowejnm。 |
\nml | Jeślin jest liczbą ósemkową (0-3), a m i l są liczbami ósemkowymi (0-7), to zostanie dopasowana ósemkowa wartość escapenml。 |
\un | pasujen gdzien jest znakiem Unicode reprezentowanym przez cztery cyfry szesnastkowe. Na przykład \u00A9 pasuje do symbolu praw autorskich (©). |
Nazwa użytkownika | /^[a-z0-9_-]{3,16}$/ |
---|---|
Hasło | /^[a-z0-9_-]{6,18}$/ |
Hasło2 | (?=^.{8,}$)(?=.*\d)(?=.*\W+)(?=.*[A-Z])(?=.*[a-z])(?!.*\n).*$ (składa się z cyfr/wielkich liter/małych liter/znaków interpunkcyjnych, wszystkie cztery muszą być obecne, 8 lub więcej cyfr) |
Wartość szesnastkowa | /^#?([a-f0-9]{6}|[a-f0-9]{3})$/ |
/^([a-z0-9_\.-]+)@([\da-z\.-]+)\.([a-z\.]{2,6})$/ /^[a-z\d]+(\. [a-z\d]+)*@([\da-z](-[\da-z])?) +(\. {1,2}[a-z]+)+$/ lub\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)* | |
URL | /^(https?:\/\/)? ([\da-z\. -]+)\. ([a-z\.] {2,6})([\/\w \...-]*)*\/? -]*)*\/? $/ lub[a-zA-z]+://[^\s]* |
Adres IP | /((2[0-4]\d|25[0-5]|[01]?\d\d?)\.){3}(2[0-4]\d|25[0-5]|[01]?\d\d?)/ /^(? :(? :25[0-5]|2[0-4][0-9]|[01]? [0-9][0-9]?) \.) {3}(? :25[0-5]|2[0-4][0-9]|[01]? [0-9][0-9]?) $/ lub((2[0-4]\d|25[0-5]|[01]?\d\d?)\.){3}(2[0-4]\d|25[0-5]|[01]?\d\d?) |
Znaczniki HTML | /^<([a-z]+)([^<]+)*(? :>(. *)<\/\1>|\s+\/>)$/ lub<(.*)(.*)>.*<\/\1>|<(.*) \/> |
Usuwanie komentarzy do kodu | (?<!http:|\S)//.*$ |
Dopasowywanie znaków dwubajtowych (w tym kanji) | [^\x00-\xff] |
Kanji (znaki) | [\u4e00-\u9fa5] |
Zakres chińskich znaków w kodzie Unicode | /^[\u2E80-\u9FFF]+$/ |
Znaki chińskie i znaki interpunkcyjne o pełnej szerokości | [\u3000-\u301e\ufe10-\ufe19\ufe30-\ufe44\ufe50-\ufe6b\uff01-\uffee] |
Data (rok-miesiąc-dzień) | (\d{4}|\d{2})-((0?([1-9]))|(1[1|2]))-((0?[1-9])|([12]([1-9]))|(3[0|1])) |
Data (miesiąc/dzień/rok) | ((0?[1-9]{1})|(1[1|2]))/(0?[1-9]|([12][1-9])|(3[0|1]))/(\d{4}|\d{2}) |
Czas (godzina:minuta, system 24-godzinny) | ((1|0?)[0-9]|2[0-3]):([0-5][0-9]) |
Numer telefonu stacjonarnego w Chinach kontynentalnych | (\d{4}-|\d{3}-)?(\d{8}|\d{7}) |
Numer telefonu komórkowego Chiny kontynentalne | 1\d{10} |
Chiński kod pocztowy | [1-9]\d{5} |
Numer dowodu osobistego w Chinach kontynentalnych (15 lub 18 cyfr) | \d{15}(\d\d[0-9xX])? |
Liczba całkowita nieujemna (liczba całkowita dodatnia lub zero) | \d+ |
Liczba całkowita dodatnia | [0-9]*[1-9][0-9]* |
Liczba całkowita ujemna | -[0-9]*[1-9][0-9]* |
Liczba całkowita | -?\d+ |
Liczba ułamkowa | (-?\d+)(\.\d+)? |
Puste linie | \n\s*\r lub \n\n(editplus) lub ^[\s\S ]*\n |
Liczba QQ | [1-9]\d{4,} |
Słowa, które nie zawierają abc | \b((?!abc)\w)+\b |
Dopasowanie pierwszego i ostatniego pustego znaku | ^\s*|\s*$ |
Często używane przez edytorów | Oto kilka zamienników dla specjalnych chińskich znaków (editplus) ^[0-9].*\n ^[^th]. * ^[^th]. ^[Ćwiczenie]. *\n ^[\s\S ]*\n ^[0-9]*\. ^[\s\S ]*\n <p[^<>*]> href="javascript:if\(confirm\('(.*?)'\)\)window\.location='(.*?)'" <span style=".[^"]*rgb\(255,255,255\)">.[^<>]*</span> <DIV class=xs0>[\s\S]*?</DIV> |
Składnia wyrażeń regularnych, powszechnie używana tabela szybkiego wyszukiwania wyrażeń regularnych, zapytanie składni wyrażeń regularnych, powszechnie używana składnia wyrażeń regularnych, podstawowa składnia wyrażeń regularnych, składnia podwyrażeń, modyfikator wyrażeń regularnych, tryb zachłanny wyrażeń regularnych, tryb niezachłanny wyrażeń regularnych, poprzez prosty i szybki sposób uzyskania kontroli nad ciągiem znaków.