JavaScript RegExp Referens手册
- Föregående sida JS Promise
- Nästa sida JS Set
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;
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. |
- Föregående sida JS Promise
- Nästa sida JS Set