Caratteri regolari | Descrizione |
---|---|
\ | Contrassegna il carattere successivo come un carattere speciale, o un carattere letterale, o una citazione all'indietro, o un escape ottale. Ad esempio, "n " corrisponde al carattere "n "。"\n " corrisponde a un carattere newline. Seriale"\\ " corrisponde a "\ " e "\( "corrisponde"( "。 |
^ | corrisponde all'inizio della stringa di input. Se la proprietà Multiline dell'oggetto RegExp è impostata, ^ corrisponde anche a "\n " o "\r " seguito da una posizione. |
$ | corrisponde alla posizione finale della stringa di input. Se la proprietà Multiline dell'oggetto RegExp è impostata, $ corrisponde anche a "\n " o "\r " prima della posizione. |
* | Corrisponde alla sottoespressione precedente zero o più volte. Ad esempio, zo* può corrispondere a "z " e "zoo ". * è equivalente a {0,}. |
+ | Corrisponde alla sottoespressione precedente una o più volte. Ad esempio, "zo+ " può corrispondere a "zo " e "zoo ", ma non può corrispondere a "z ". + è equivalente a {1,}. |
? | Corrisponde alla sottoespressione precedente zero o una volta. Ad esempio, "do(es)? " può corrispondere a "does " o "does " in "do ".? Equivale a {0,1}. |
{n} | n è un numero intero non negativo. La corrispondenza è determinatan volte. Ad esempio, "o{2} " non può corrispondere a "Bob " in "o ", ma può corrispondere a entrambe le o in "food " in entrambe le o. |
{n,} | n è un numero intero non negativo. Corrisponde almenon volte. Ad esempio, "o{2,} " non può corrispondere a "Bob " in "o ", ma può corrispondere a tutte le o in "foooood " per tutte le o in " "."o{1,} "è equivalente a "o+ "。"o{0,} " è quindi equivalente a "o* "。 |
{n,m} | m en sono tutti numeri interi non negativi, doven<=m . Corrisponde almenon volte e al massimom volte. Ad esempio, "o{1,3} " corrisponderebbe alle prime tre "o" in "fooooood " per le prime tre o in "o{0,1} " è equivalente a "o? ". Si noti che non ci possono essere spazi tra una virgola e due numeri. |
? | Quando questo carattere è immediatamente seguito da uno qualsiasi degli altri caratteri di restrizione (*,+,? , {n},{n,},{n,m }), il modello di corrispondenza è non-greedy. Il modello non-greedy corrisponde al minor numero possibile di stringhe ricercate, mentre il modello greedy predefinito corrisponde al maggior numero possibile di stringhe ricercate. Ad esempio, per la stringa "oooo ","o+? " corrisponderà a un singolo "o ", mentre "o+ " corrisponderà a tutte le stringhe "o "。 |
. | corrisponde a qualsiasi stringa singola tranne "\ n " per qualsiasi singolo carattere eccetto ". Per abbinare qualsiasi carattere, compreso "\ n ", utilizzare uno schema come "(.|\n) ". |
(pattern) | Corrisponde al modello e ottiene questa corrispondenza. La corrispondenza risultante può essere ottenuta dall'insieme Matches, utilizzando l'insieme SubMatches in VBScript o l'attributo $0...$9 in JScript. Per abbinare i caratteri delle parentesi, utilizzare i caratteri "\( " o "\) "。 |
(?:pattern) | corrisponde al pattern ma non recupera il risultato, cioè è una corrispondenza non recuperabile che non viene memorizzata per un uso successivo. Questo si ottiene utilizzando il carattere o "(|) " per combinare parti di un modello è utile. Ad esempio, "industr(?:y|ies) " è un'espressione più breve di "industry|industries " è un'espressione più abbreviata. |
(?=pattern) | Pre-verifica positiva affermativa che corrisponde alla stringa di ricerca all'inizio di qualsiasi stringa che corrisponde allo schema. Si tratta di una corrispondenza non-fetch, cioè la corrispondenza non deve essere recuperata per un uso successivo. Ad esempio, "Windows(?=95|98|NT|2000) " può corrispondere a "Windows2000 " in "Windows ", ma non può corrispondere a "Windows3.1 " in "Windows ". I controlli preliminari non consumano caratteri, cioè, dopo una corrispondenza, la ricerca della corrispondenza successiva inizia immediatamente dopo l'ultima corrispondenza, non dopo il carattere contenente il controllo preliminare. |
(?!pattern) | I pre-controlli negativi positivi corrispondono alla stringa di ricerca all'inizio di qualsiasi stringa che non corrisponde allo schema. Si tratta di una corrispondenza non-fetch, cioè la corrispondenza non deve essere recuperata per un uso successivo. Ad esempio, "Windows(?!95|98|NT|2000) " può corrispondere a "Windows3.1 " in "Windows ", ma non può corrispondere a "Windows2000 " in "Windows ". I controlli preventivi non consumano caratteri, cioè, dopo una corrispondenza, la ricerca della corrispondenza successiva inizia immediatamente dopo l'ultima corrispondenza, non dopo il carattere contenente il controllo preventivo. |
(?<=pattern) | I pre-controlli affermativi inversi sono analoghi ai pre-controlli affermativi in avanti, ma nella direzione opposta. Ad esempio, "(?<=95|98|NT|2000)Windows " può corrispondere a "2000Windows " in "Windows ", ma non può corrispondere a "3.1Windows " in "Windows "。 |
(?<!pattern) | Il precondizionamento negativo inverso è analogo al precondizionamento negativo in avanti, ma nella direzione opposta. Ad esempio, "(?<!95|98|NT|2000)Windows " può corrispondere a "3.1Windows " in "Windows ", ma non può corrispondere a "2000Windows " in "Windows "。 |
x|y | corrisponde a x o y. Ad esempio, "z|food " può corrispondere a "z " o "food "。"(z|f)ood ", allora corrisponde a "zood " o "food "。 |
[xyz] | Set di caratteri. Corrisponde a uno qualsiasi dei caratteri inclusi. Ad esempio, "[abc] " potrebbe corrispondere a "plain " nel set di caratteri "a "。 |
[^xyz] | Set di caratteri negativi. Corrisponde a qualsiasi carattere non incluso. Ad esempio, "[^abc] " può corrispondere a "plain " nell'intervallo di caratteri "p "。 |
[a-z] | intervallo di caratteri. Corrisponde a qualsiasi carattere nell'intervallo specificato. Ad esempio, "[a-z] " può corrispondere ai caratteri da "a " a "z " per qualsiasi carattere minuscolo dell'intervallo. |
[^a-z] | Intervallo di caratteri negativo. Corrisponde a qualsiasi carattere arbitrario non compreso nell'intervallo specificato. Ad esempio, "[^a-z] " può corrispondere a qualsiasi carattere non compreso nell'intervallo da "a " a "z " di caratteri arbitrari. |
\b | Corrisponde a un confine di parola, ovvero alla posizione tra la parola e uno spazio. Ad esempio, "er\b " può corrispondere a "never " in "er ", ma non può corrispondere a "verb " in "er "。 |
\B | corrisponde a confini di non parole. "er\B " può corrispondere a "verb " in "er ", ma non può corrispondere a "never " in "er "。 |
\cx | Corrisponde a un carattere di controllo specificato da x. Ad esempio, \cM corrisponde a un carattere di controllo M o di ritorno a capo. x deve avere un valore compreso tra A-Z o a-z. Altrimenti, c viene trattato come un carattere originale "c ". |
\d | Corrisponde a un carattere numerico. Equivale a [0-9]. |
\D | Corrisponde a un carattere non numerico. Equivale a [^0-9]. |
\f | Corrisponde a un carattere di interruzione di pagina. Equivale a \x0c e \cL. |
\n | Corrisponde a un carattere di avanzamento riga. Equivale a \x0a e \cJ. |
\r | Corrisponde a un carattere di ritorno a capo. Equivale a \x0d e \cM. |
\s | Corrisponde a qualsiasi carattere di spazio bianco, inclusi spazi, tabulazioni, interruzioni di pagina e così via. Equivale a [ \f\n\r\t\v]. |
\S | Corrisponde a qualsiasi carattere non bianco. Equivale a [ ^ \f\n\r\t\v]. |
\t | Corrisponde a un carattere di tabulazione. Equivale a \x09 e \cI. |
\v | Corrisponde a una tabulazione verticale. Equivale a \x0b e \cK. |
\w | Corrisponde a qualsiasi carattere di parola che includa un trattino basso. Equivale a "[A-Za-z0-9_] "。 |
\W | Corrisponde a qualsiasi carattere non verbale. Equivalente a "[^A-Za-z0-9_] "。 |
\xn | Corrisponde an doven è il valore di escape esadecimale. Il valore di escape esadecimale deve essere di due cifre. Ad esempio, "\x41 " corrisponde a "A "。"\x041 " sarebbe equivalente a "\x04&1 ". La codifica ASCII può essere utilizzata nelle espressioni regolari. . |
\num | Corrispondenum dovenum è un numero intero positivo. Un riferimento alla corrispondenza ottenuta. Ad esempio, "(.)\1 " corrisponde a due caratteri identici consecutivi. |
\n | Identifica un valore di escape ottale o un riferimento all'indietro. Se \n è preceduto da almenon vengono recuperate le sottoespressioni, alloran è un riferimento all'indietro. Altrimenti, sen è un numero ottale (0-7), alloran è un valore di escape ottale. |
\nm | Identifica un valore di escape ottale o un riferimento all'indietro. Se \nm è preceduto da almenonm una sottoespressione get, alloranm è un riferimento all'indietro. Se \nm è stato preceduto da almenon numero di acquisizioni, alloran è un riferimento all'indietro seguito dal testom di un riferimento all'indietro. Se nessuna delle condizioni precedenti è soddisfatta, sen em sono entrambi numeri ottali (0-7), allora \nm corrisponderà al valore di escape ottalenm。 |
\nml | Sen è un numero ottale (0-3) e m e l sono entrambi numeri ottali (0-7), allora corrisponde al valore di escape ottalenml。 |
\un | corrisponde an doven è un carattere Unicode rappresentato da quattro cifre esadecimali. Ad esempio, \u00A9 corrisponde al simbolo del copyright (©). |
Nome utente | /^[a-z0-9_-]{3,16}$/ |
---|---|
Password | /^[a-z0-9_-]{6,18}$/ |
Password2 | (?=^.{8,}$)(?=.*\d)(?=.*\W+)(?=.*[A-Z])(?=.*[a-z])(?!.*\n).*$ (composta da numeri/lettere maiuscole/lettere minuscole/segni di punteggiatura, devono essere presenti tutti e quattro, 8 o più cifre) |
Valore esadecimale | /^#?([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]+)+$/ oppure\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)* | |
URL | /^(https?:\/\/)? ([\da-z. -]+)\. ([a-z.] {2,6})([\/\w \...-]*)*\/? -]*)*\/? $/ o[a-zA-z]+://[^\s]* |
Indirizzo 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]?) $/ o((2[0-4]\d|25[0-5]|[01]?\d\d?)\.){3}(2[0-4]\d|25[0-5]|[01]?\d\d?) |
Tag HTML | /^<([a-z]+)([^<]+)*(? :>(. *)<\/\1>|\s+\/>)$/ oppure<(.*)(.*)>.*<\/\1>|<(.*) \/> |
Rimuove i commenti al codice | (?<!http:|\S)//.*$ |
Corrisponde ai caratteri a doppio byte (compresi i kanji) | [^\x00-\xff] |
Kanji (Caratteri) | [\u4e00-\u9fa5] |
Gamma di caratteri cinesi in codice Unicode | /^[\u2E80-\u9FFF]+$/ |
Punteggiatura cinese e a tutta larghezza (caratteri) | [\u3000-\u301e\ufe10-\ufe19\ufe30-\ufe44\ufe50-\ufe6b\uff01-\uffee] |
Data(anno-mese-giorno) | (\d{4}|\d{2})-((0?([1-9]))|(1[1|2]))-((0?[1-9])|([12]([1-9]))|(3[0|1])) |
Data (mese/giorno/anno) | ((0?[1-9]{1})|(1[1|2]))/(0?[1-9]|([12][1-9])|(3[0|1]))/(\d{4}|\d{2}) |
Ora (ora:minuto, sistema a 24 ore) | ((1|0?)[0-9]|2[0-3]):([0-5][0-9]) |
Numero di telefono fisso della Cina continentale | (\d{4}-|\d{3}-)?(\d{8}|\d{7}) |
Numero di telefono cellulare della Cina continentale | 1\d{10} |
Codice postale cinese | [1-9]\d{5} |
Numero di carta d'identità della Cina continentale (15 o 18 cifre) | \d{15}(\d\d[0-9xX])? |
Numero intero non negativo (numero intero positivo o zero) | \d+ |
Numero intero positivo | [0-9]*[1-9][0-9]* |
Numero intero negativo | -[0-9]*[1-9][0-9]* |
Numero intero | -?\d+ |
Frazionario | (-?\d+)(\.\d+)? |
Linee vuote | \n\s*\r o \n\n(editplus) o ^[\s\S ]*\n |
Numero QQ | [1-9]\d{4,} |
Parole che non contengono abc | \b((?!abc)\w)+\b |
Corrisponde al primo e all'ultimo carattere vuoto | ^\s*|\s*$ |
Usato comunemente dai redattori | Ecco alcune sostituzioni per i caratteri cinesi speciali(editplus) ^[0-9].*\n ^[^th]. *\^[^th]. ^[Esercizio]. *\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> |
La sintassi delle espressioni regolari è una tabella di ricerca rapida delle espressioni regolari comunemente utilizzate, la sintassi delle espressioni regolari comunemente utilizzate, la sintassi di base delle espressioni regolari, la sintassi delle sottoespressioni, il modificatore delle espressioni regolari, la modalità "greedy" delle espressioni regolari, la modalità "non-greedy" delle espressioni regolari, attraverso un modo semplice e veloce per ottenere il controllo della stringa.