JavaScript Regularuttryck
- Föregående sida JS bitoperatörer
- Nästa sida JS operator precedence
Reguljära uttryck är teckensekvensen som utgör
Denna sökmönster kan användas för text sökning och textersättning operationer.
Vad är ett reguljärt uttryck?
Reguljära uttryck är byggstenarna försökmönster (search pattern)s字符sekvens.
När du söker efter data i texten, kan du använda sökmodellen för att beskriva det du söker efter.
Reguljära uttryck kan vara en enda tecken, eller mer komplexa mönster.
Reguljära uttryck kan användas för alla typer avtext sökningochtextersättningoperationer.
syntaks
/mönster/modifierare;
Exempel
var patt = /codew3c/i;
Exempel på förklaring:
/codew3c/i
är ett reguljärt uttryck.
codew3c
är mönster (pattern) (används i sökning).
Modifierare
är modifierare (ändra sökning till ocasekänslig).
Använd strängmetoder
I JavaScript används reguljära uttryck ofta för tvåsträngmetoder:search()
och Använd strängmetoden replace() för att hantera strängar
.
search()
Metoden använder uttryck för att söka efter matchningar och returnerar sedan matchningens position.
Använd strängmetoden replace() för att hantera strängar
Metoden returnerar den modifierade strängen där mönstret ersatts.
Använd strängmetoden search() för att hantera sträng
search()
Metoden accepterar också sträng som sökparametrar. Strängparametrar kommer att konverteras till reguljära uttryck:
Exempel
Använd sträng för att utföra en sökning efter "W3school":
var str = "Besök CodeW3C.com!"; var n = str.search("W3School");
Använd reguljära uttryck i strängmetoden search()
Exempel
Använd reguljära uttryck för att utföra en ocasekänslig sökning efter "codew3c" i söksträngen:
var str = "Visit CodeW3C.com"; var str = "Besök CodeW3C.com";
var n = str.search(/codew3c/i);
Resultatet av n kommer att vara:
6
Använd strängmetoden replace() för att hantera strängar
replace()
Använd okänsliga för storlek reguljära uttryck för att ersätta Microsoft med W3school i strängen: Åtminstone accepterar den sträng som sökparameter:
var res = str.replace("Microsoft", "W3School");
Exempel
Använd reguljära uttryck i strängmetoden replace()
Använd okänsliga för storlek reguljära uttryck för att ersätta Microsoft med W3school i strängen: var str = "Besök Microsoft!";
var res = str.replace(/microsoft/i, "W3School");
Resultatet av res kommer att vara:
Besök CodeW3C.com!
Har du lagt märke till?
Reguljära uttryck parametrar (inte strängparametrar) kan användas i de ovanstående metoderna.
Reguljära uttryck kan göra din sökning mer kraftfull (t.ex. icke-känslig för storlek).
Kan användas för mer global sökning utan att tänka på storlek:Reguljärt uttryck modifierare
Kan användas för mer global sökning utan att tänka på storlek: | Beskrivning | Prova |
---|---|---|
Modifierare | Utför matchning som är känslig för storlek. | Prova |
g | Utför global matchning (sök efter alla matchningar i stället för att stoppa efter den första matchningen). | Prova |
m | Utför matchning av flera rader. | Prova |
Reguljärt uttrycksmönster
ParenteserAnvänds för att söka efter strängar inom ett visst område:
Uttryck | Beskrivning | Prova |
---|---|---|
[abc] | Sök efter alla tecken inom klamrar. | Prova |
[0-9] | Sök efter alla siffror från 0 till 9. | Prova |
(x|y) | Sök efter val som är separerade av |. | Prova |
Meta-tecken (Metacharacter)Det är tecken som har särskilt innebörd:
Meta-tecken | Beskrivning | Prova |
---|---|---|
\d | Sök efter siffror. | Prova |
\s | Sök efter blanktecken. | Prova |
\b | Matcha ordgräns. | Prova |
\uxxxx | Sök efter Unicode-tecken som specificeras av hexadecimalt nummer xxxx. | Prova |
Quantifiers Definiera kvantifierare:
Kvantifierare | Beskrivning | Prova |
---|---|---|
n+ | Matchar alla strängar som innehåller minst en n. | Prova |
n* | Matchar alla strängar som innehåller noll eller flera n. | Prova |
n? | Matchar alla strängar som innehåller noll eller en n. | Prova |
Använd RegExp-objekt
I JavaScript är RegExp-objektet ett reguljärt uttryck som har fördefinierade egenskaper och metoder.
Använd test()
test()
Det är en reguljärt uttrycksmetod.
Det söker efter strängar genom mönster och returnerar sedan true eller false baserat på resultatet.
Nedanstående exempel söker tecknet "e" i strängen:
Exempel
var patt = /e/; patt.test("The best things in life are free!");
Eftersom det finns en "e" i strängen, kommer utmatningen av ovanstående kod att vara:
true
Du behöver inte först placera regular expressions i en variabel. Ovanstående två rader kan förenklas till en rad:
/e/.test("The best things in life are free!");
Använd exec()
exec()
Metod är en reguljärt uttrycksmetod.
Det söker efter specifikt angivna mönster i strängen och returnerar den hittade texten.
Om ingen match hittas, returneras null.
Nedanstående exempel söker tecknet "e" i strängen:
Exempel
/e/.exec("The best things in life are free!");
Eftersom det finns en "e" i strängen, kommer utmatningen av ovanstående kod att vara:
e
Komplett RegExp referenshandbok
För en fullständig referenshandbok, besök vår JavaScript RegExp referenshandbok.
Denna referenshandbok innehåller beskrivningar och exempel på alla RegExp egenskaper och metoder.
- Föregående sida JS bitoperatörer
- Nästa sida JS operator precedence