JavaScript RegExp Referens手册

RegExp-objekt

Reguljära uttryck är ett teckenmönster.

Detta mönster används för att utföra textmatchning med funktioner som 'sök och ersätt'.

I JavaScript är RegExp-objektet ett objekt som har egenskaper och metoder.

Syntax

/pattern/modifier(s);

Exempel

let pattern = /codew3c/i;

Prova själv

Exempel förklaring:

codew3c Att söka mönster
/codew3c/ Reguljära uttryck
/codew3c/i ocasekänsliga reguljära uttryck

För mer information om reguljära uttryck, läs vår JavaScript RegExp-handbok.

Modifikator

Modifikatorer används för att utföra ocasekänslig och global sökning:

Modifikator Beskrivning
g utför global matchning (sök alla matchningar istället för att stanna vid den första matchningen).
i utför matchning utan att ta hänsyn till bokstavsk cas.
d utför matchning av understräng.
m utför matchning på flera rader.

Klamrar

Klamrar används för att söka tecken inom ett visst område:

Uttryck Beskrivning
[abc] Sök alla tecken inom klamrar.
[^abc] Sök alla tecken som inte finns inom klamrar.
[0-9] Sök alla tecken som är ett av siffrorna 0 till 9.
[^0-9] Sök alla tecken som inte finns inom parentes (alla tecken som inte är siffror).
(x|y) Sök alla angivna alternativ.

Meta-tecken

Meta-tecken är tecken med särskilt innebörd:

Meta-tecken Beskrivning
. Sök ett enskilt tecken, utom radbrytningstecken eller radavslutningstecken.
\w Sök ordtecken.
\W Sök icke ordtecken.
\d Sök numeriska tecken.
\D Sök icke numeriska tecken.
\s Sök blanktecken.
\S Sök icke blanktecken.
\b Sök matchande element vid ordets början eller slut, där början är som: \bHI, och slutet som: HI\b.
\B Sök matchande element utanför ordets början eller slut.
\0 Sök NULL-tecken.
\n Sök nylinje.
\f Sök sidbyte.
\r Sök returtecken.
\t Sök tabulator.
\v Sök vertikal tabulator.
\xxx Sök tecken definierat av oktadecimalt nummer xxx.
\xdd Sök tecken definierat av sexadecimalt nummer dd.
\udddd Sök Unicode-tecken definierat av sexadecimalt nummer xxxx.

Kvantifierare

Kvantifierare Beskrivning
n+ Matchar alla tecken som innehåller minst ett tecken n.
n* Matchar alla tecken som innehåller n noll eller flera tecken.
n? Matchar alla tecken som innehåller n noll eller ett tecken.
n{X} Matchar alla tecken som innehåller X tecken n.
n{X,Y} Matchar alla tecken som innehåller X till Y tecken n.
n{X,} Matchar alla tecken som innehåller minst X tecken n.
n$ Matchar alla tecken som slutar med n.
^n Matchar alla tecken som börjar med n.
?=n Matchar alla tecken som följs av den angivna strängen n.
?!n Matchar alla tecken som inte följs av den angivna strängen n.

RegExp-objekt egenskaper

Egenskaper Beskrivning
constructor Returnerar funktionen som skapar prototypen för RegExp-objektet.
global Kontrollera om "g"-modifikatören är satt.
ignoreCase Kontrollera om "i"-modifikatören är satt.
lastIndex Definiera index för nästa match.
multiline Kontrollera om "m"-modifikatören är satt.
source Returnerar texten för RegExp-mönstret.

RegExp-objektmetoder

Metod Beskrivning
compile() Föråldrad i version 1.5. Compilerar reguljära uttryck.
exec() Testa matchande element i en teststräng. Returnerar det första matchande elementet.
test() Testa matchande element i en teststräng. Returnerar sant eller falskt.
toString() Returnerar strängvärdet för reguljärt uttryck.

Beskrivning av RegExp-objekt

RegExp-objekt representerar ett reguljärt uttryck och är ett kraftfullt verktyg för att utföra mönstermatchning på strängar.

Directiv syntax

/pattern/attributes

Syntaks för att skapa RegExp-objekt:

new RegExp(pattern, attributes);

parametrar

parametrar pattern är en sträng som specificerar mönstret för reguljärt uttryck eller ett annat reguljärt uttryck.

parametrar attributes är en valfri sträng som innehåller egenskaperna "g", "i" och "m", som används för att specificera global matchning,大小写敏感的匹配 och multi-line matchning. Före ECMAScript-standardiseringen stöddes inte egenskapen m. pattern är ett reguljärt uttryck och inte en sträng, måste detta parametrar utelämnas.

Returvärde

ett nytt RegExp-objekt med det specifika mönstret och flaggorna. pattern är ett reguljärt uttryck och inte en sträng, då skapar RegExp()-konstruktorn ett nytt RegExp-objekt med samma mönster och flaggor som det specifika RegExp-objektet.

om man inte använder new-operatorn, utan att anropa RegExp() som en funktion, då beter den sig likadant som när man anropar den med new-operatorn, men när pattern är ett reguljärt uttryck, det returnerar bara patternoch skapar inte längre ett nytt RegExp-objekt.

kasta

SyntaxError - om pattern inte är en giltig reguljär uttryck, eller attributes innehåller tecken utöver "g", "i" och "m", kasta detta undantag.

TypeError - om pattern är ett RegExp-objekt, men utan att utelämna attributes Parametrar, kasta detta undantag.

Webbläsarstöd

/regexp/ är en egenskap av ECMAScript1 (ES1).

Alla webbläsare stöder fullt ut ES1 (JavaScript 1997):

Chrome IE Edge Firefox Safari Opera
Chrome IE Edge Firefox Safari Opera
Stöder Stöder Stöder Stöder Stöder Stöder

Metoder för String-objekt som stöder reguljära uttryck

Metod Beskrivning
search Sök efter värden som matchar ett reguljärt uttryck.
match Hitta en eller flera matchningar av ett reguljärt uttryck.
replace Ersätt understrängar som matchar ett reguljärt uttryck.
split Dela upp en sträng i en strängarray.