Espressioni regolari JavaScript
- Pagina precedente Operazioni bit JS
- Pagina successiva Priorità degli operatori JS
Le espressioni regolari sono costituite da una sequenza di caratteri che formano un modello di ricerca.
Questa modalità di ricerca può essere utilizzata per operazioni di ricerca e sostituzione di testo.
Cos'è un'espressione regolare?
Le espressioni regolari sono costituite daModello di ricerca (search pattern)sequenza di caratteri.
Quando cerchi dati nel testo, puoi usare il modello di ricerca per descrivere ciò che cerchi.
Le espressioni regolari possono essere un singolo carattere o un modello più complesso.
Le espressioni regolari possono essere utilizzate per eseguire tutti i tipi diRicerca di testoeSostituzione di testoOperazione.
Sintassi
/modello/modificatori;
Esempio
var patt = /codew3c/i;
Esempio di spiegazione:
/codew3c/i
È un'espressione regolare.
codew3c
È il modello (pattern) (usato nella ricerca).
Modificatore
Sono i modificatori (modifica la ricerca in caso-sensitive).
Usa il metodo della stringa
In JavaScript, l'espressione regolare viene utilizzata in dueMetodi di stringa:search()
e Usare il metodo replace() della stringa per elaborare la stringa
.
search()
La funzione utilizza l'espressione per cercare corrispondenze e poi restituisce la posizione del match.
Usare il metodo replace() della stringa per elaborare la stringa
La funzione restituisce la stringa modificata dopo la sostituzione del modello.
Usa la funzione search() della stringa per elaborare la stringa
search()
La funzione accetta anche una stringa come parametro di ricerca. Il parametro di stringa viene convertito in un'espressione regolare:
Esempio
Esegui una ricerca su "W3school" utilizzando la stringa
var str = "Visit CodeW3C.com!"; var n = str.search("W3School");
Usa l'espressione regolare nella funzione search() della stringa
Esempio
Esegui una ricerca case-insensibile di "codew3c" utilizzando l'espressione regolare nella stringa di ricerca:
var str = "Visit CodeW3C.com"; var str = "Visit CodeW3C.com";
var n = str.search(/codew3c/i);
Il risultato di n sarà:
6
Usare il metodo replace() della stringa per elaborare la stringa
replace()
Sostituisci Microsoft con W3school utilizzando un'espressione regolare non sensibile alle maiuscole e minuscole nella stringa: Anche accetta una stringa come parametro di ricerca:
var res = str.replace("Microsoft", "W3School");
Esempio
Usare un'espressione regolare non sensibile alle maiuscole e minuscole per sostituire Microsoft con W3school nel metodo replace() della stringa
Sostituisci Microsoft con W3school utilizzando un'espressione regolare non sensibile alle maiuscole e minuscole nella stringa: var str = "Visit Microsoft!";
var res = str.replace(/microsoft/i, "W3School");
Il risultato di res sarà:
Visit CodeW3C.com!
Hai notato?
Parametro dell'espressione regolare (invece dei parametri di stringa) può essere utilizzato nei metodi sopra menzionati.
L'espressione regolare può rendere la tua ricerca più potente (ad esempio, senza distinzione tra maiuscole e minuscole).
Può essere utilizzato per una ricerca più globale insensibile alle maiuscole e minuscole:Modificatore di espressione regolare
Può essere utilizzato per una ricerca più globale insensibile alle maiuscole e minuscole: | Descrizione | Prova a farlo |
---|---|---|
Modificatore | Esegue la corrispondenza insensibile alle maiuscole e minuscole. | Prova a farlo |
g | Esegue la corrispondenza globale (cerca tutte le corrispondenze invece di fermarsi dopo la prima corrispondenza trovata). | Prova a farlo |
m | Esegue la corrispondenza multipla di righe. | Prova a farlo |
Modello di espressione regolare
ParentesiUsata per trovare una gamma di stringhe:
Espressione | Descrizione | Prova a farlo |
---|---|---|
[abc] | Trova qualsiasi carattere tra parentesi quadre. | Prova a farlo |
[0-9] | Trova qualsiasi numero da 0 a 9. | Prova a farlo |
(x|y) | Trova qualsiasi opzione separata da '|'. | Prova a farlo |
Carattere speciale (Metacharacter)Sono caratteri che hanno un significato speciale:
Carattere speciale | Descrizione | Prova a farlo |
---|---|---|
\d | Trova i numeri. | Prova a farlo |
\s | Trova i caratteri di spaziatura. | Prova a farlo |
\b | Corrisponde al confine di parola. | Prova a farlo |
\uxxxx | Trova il carattere Unicode specificato dal numero esadecimale xxxx. | Prova a farlo |
Quantifiers Definizione del quantificatore:
Quantificatore | Descrizione | Prova a farlo |
---|---|---|
n+ | Corrisponde a qualsiasi stringa che contenga almeno una 'n'. | Prova a farlo |
n* | Corrisponde a qualsiasi stringa che contenga zero o più 'n'. | Prova a farlo |
n? | Corrisponde a qualsiasi stringa che contenga zero o una 'n'. | Prova a farlo |
Usare l'oggetto RegExp
In JavaScript, l'oggetto RegExp è un oggetto di espressione regolare con attributi e metodi predefiniti.
Usare test()
test()
È un metodo di espressione regolare.
Ricerca una stringa attraverso uno schema e restituisce true o false in base ai risultati.
Il seguente esempio cerca il carattere "e" nella stringa:
Esempio
var patt = /e/; patt.test("The best things in life are free!");
Poiché la stringa contiene un "e", l'output del codice sopra sarà:
true
Non è necessario inserire il'espressione regolare in una variabile. Le due righe sopra possono essere abbreviate in una riga:
/e/.test("The best things in life are free!");
Usare exec()
exec()
Un metodo è un metodo di espressione regolare.
Esso cerca la stringa specificata tramite un modello (pattern) e restituisce il testo trovato.
Se non viene trovata una corrispondenza, viene restituito null.
Il seguente esempio cerca il carattere "e" nella stringa:
Esempio
/e/.exec("The best things in life are free!");
Poiché la stringa contiene un "e", l'output del codice sopra sarà:
e
Manuale di riferimento completo RegExp
Per il manuale di riferimento completo, visitare il nostro Manuale di riferimento RegExp JavaScript.
Questo manuale di riferimento contiene la descrizione e gli esempi di tutte le proprietà e metodi RegExp.
- Pagina precedente Operazioni bit JS
- Pagina successiva Priorità degli operatori JS