Manuale di riferimento JavaScript RegExp

Oggetto RegExp

Espressione regolare è un modello di caratteri.

Questo modello viene utilizzato per eseguire funzioni di ricerca e sostituzione di modello sul testo.

In JavaScript, l'oggetto RegExp è un oggetto che possiede attributi e metodi.

Sintassi

/pattern/modifier(s);

Esempio

let pattern = /codew3c/i;

Prova tu stesso

Esempio di spiegazione:

codew3c Modello da cercare
/codew3c/ Espressione regolare
/codew3c/i Espressione regolare senza distinzione tra maiuscole e minuscole

Per ulteriori informazioni sulle espressioni regolari, leggi la nostra Guida RegExp JavaScript.

Modificatore

Il modificatore viene utilizzato per eseguire la ricerca senza distinzione tra maiuscole e minuscole e globale:

Modificatore Descrizione
g Esegui la corrispondenza globale (trova tutte le corrispondenze invece di fermarsi alla prima corrispondenza).
i Esegui la corrispondenza senza distinzione tra maiuscole e minuscole.
d Esegui la corrispondenza della sottostringa.
m Esegui la corrispondenza multi-linea.

Parentesi quadre

Le parentesi quadre vengono utilizzate per trovare i caratteri all'interno di un intervallo:

Espressione Descrizione
[abc] Trova qualsiasi carattere tra parentesi tonde.
[^abc] Trova qualsiasi carattere non compreso tra parentesi quadre.
[0-9] Trova qualsiasi numero tra 0 e 9.
[^0-9] Trova qualsiasi carattere che non si trova all'interno dei parentesi (qualsiasi carattere non numerico).
(x|y) Trova qualsiasi opzione specificata.

Caratteri speciali

I caratteri speciali sono caratteri che hanno un significato speciale:

Caratteri speciali Descrizione
. Trova un singolo carattere, eccetto il carattere di newline o di terminazione della riga.
\w Trova il carattere di parola.
\W Trova il carattere non di parola.
\d Trova il numero.
\D Trova il carattere non numerico.
\s Trova il carattere bianco.
\S Trova il carattere non bianco.
\b Trova la corrispondenza all'inizio o alla fine della parola, come ad esempio: \bHI, alla fine come: HI\b.
\B Trova la corrispondenza, ma non all'inizio o alla fine della parola.
\0 Trova il carattere NULL.
\n Trova il carattere di newline.
\f Trova il carattere di invio di pagina.
\r Trova il carattere di ritorno a capo.
\t Trova il tab.
\v Trova il tab verticale.
\xxx Trova il carattere specificato dal numero ottale xxx.
\xdd Trova il carattere specificato dal numero esadecimale dd.
\udddd Trova il carattere Unicode specificato dal numero esadecimale xxxx.

Quantificatori

Quantificatori Descrizione
n+ Corrisponde a qualsiasi stringa che contiene almeno una n.
n* Corrisponde a qualsiasi stringa che contiene zero o più n.
n? Corrisponde a qualsiasi stringa che contiene zero o una n.
n{X} Corrisponde a qualsiasi stringa che contiene X n.
n{X,Y} Corrisponde a qualsiasi stringa che contiene da X a Y n.
n{X,} Corrisponde a qualsiasi stringa che contiene almeno X n.
n$ Corrisponde a qualsiasi stringa che finisce con n.
^n Corrisponde a qualsiasi stringa che inizia con n.
?=n Corrisponde a qualsiasi stringa che è seguita dalla stringa specificata n.
?!n Corrisponde a qualsiasi stringa che non è seguita dalla stringa specificata n.

Proprietà dell'oggetto RegExp

Proprietà Descrizione
constructor Restituisce la funzione che crea l'原型 dell'oggetto RegExp.
global Verifica se è stato imposto il modificador "g".
ignoreCase Verifica se è stato imposto il modificador "i".
lastIndex Stabilisce l'indice di inizio per la prossima corrispondenza.
multiline Verifica se è stato imposto il modificador "m".
source Restituisce il testo del modello RegExp.

Metodi dell'oggetto RegExp

Metodo Descrizione
compile() Disattivato nella versione 1.5. Compila l'espressione regolare.
exec() Testa l'elemento corrispondente nella stringa di test. Restituisce il primo elemento corrispondente.
test() Testa l'elemento corrispondente nella stringa di test. Restituisce true o false.
toString()

patternattributes

pattern attributes

Parametro

Parametro pattern È una stringa che specifica il modello dell'espressione regolare o un'altra espressione regolare.

Parametro attributes È una stringa opzionale che contiene i caratteri "g", "i" e "m", rispettivamente utilizzati per specificare la corrispondenza globale, la corrispondenza case-sensitive e la corrispondenza multilinea. Prima della standardizzazione dell'ECMAScript, non era supportato il flag m. Se pattern È un'espressione regolare e non una stringa, deve essere omesso questo parametro.

Valore di ritorno

Un nuovo oggetto RegExp con il modello e i flag specificati. Se il parametro pattern È un'espressione regolare e non una stringa, il costruttore RegExp() crea un nuovo oggetto RegExp con lo stesso modello e flag dell'espressione regolare specificata.

Se non si utilizza l'operatore new, ma si chiama RegExp() come una funzione, il comportamento è lo stesso di quando si chiama con l'operatore new, ma quando pattern È un'espressione regolare, restituisce solo patterne non crea un nuovo oggetto RegExp.

Lancia

SyntaxError - Se pattern Non è un'espressione regolare valida, o attributes Contiene caratteri diversi da "g", "i" e "m", lancia l'eccezione.

TypeError - Se pattern È un oggetto RegExp, ma non viene omesso attributes Parametro, lancia l'eccezione.

Supporto del browser

/regexp/ è una caratteristica di ECMAScript1 (ES1).

Tutti i browser supportano completamente ES1 (JavaScript 1997):

Chrome IE Edge Firefox Safari Opera
Chrome IE Edge Firefox Safari Opera
Supporta Supporta Supporta Supporta Supporta Supporta

Metodi dell'oggetto String che supportano espressioni regolari

Metodo Descrizione
search Ricerca valori che corrispondono all'espressione regolare.
match Trova una o più corrispondenze di espressioni regolari.
replace Sostituisci la sottostringa che corrisponde all'espressione regolare.
split Dividi una stringa in un array di stringhe.