Vanligt uttryck
Ett reguljärt uttryck (eller "regex") är ett sökmönster som används för att matcha en eller flera tecken inom en sträng. Det kan matcha specifika tecken, jokertecken och teckenintervall. Regeluttryck användes ursprungligen av Unix verktyg, som vi och grep. Men de stöds nu av många kodredigeringar tillämpningar och ordbehandlare på flera plattformar. Regulära uttryck kan också användas i de flesta större programmeringsspråk.
Ett reguljärt uttryck kan vara så enkelt som en grundläggande sträng, till exempel "app". Regex"app"skulle matcha strängar som innehåller orden" appar "," applikationer "och" otillämpligt ". Ett vanligt uttryck kan också innehålla ankartecken (" ^ "och" $ ") som används för att ange början och slutet på en rad, respektive. Därför är regex "^ appar"skulle matcha strängen," appar är bra ", men skulle inte matcha strängen" Jag gillar appar. "
Regeluttryck kan innehålla bindestreck som används för att matcha ett antal tecken, till exempel alla små bokstäver. Till exempel regex "[Az]"skulle matcha" appar ", men skulle inte matcha strängarna" Appar "eller" 123 ". Regex"[A-Za-z]"skulle matcha" Appar "och"[0-9]"skulle matcha" 123 ". En period som är standarden wildcard karaktär i reguljära uttryck, kan användas för att matcha vilket tecken som helst (förutom ett slutet av linjetecken). En period följt av en asterisk (. *) Matchar noll eller fler instanser, medan en period följt av ett plus (. +) Matchar en eller flera instanser.
Så vad händer om du behöver matcha en sträng som innehåller en streck, asterisk, plus eller ett ankartecken? Dessa karaktärer kan inkluderas i ett vanligt uttrycksmönster genom att "fly" dem med en snedstreck ("/"). Om du till exempel vill söka efter "$ 0.99" skulle regex se ut som "/ $ 0 / .99". Backslash används också för att söka efter tecken som inte kan skrivas ut. Till exempel" / r "matchar en vagnretur," / n "matchar en ny rad och" / t "matchar ett fliktecken.
Även om det inte kräver mycket ansträngningar att skapa ett grundläggande reguljärt uttryck, är det inte lätt att skriva en avancerad regex. Även de bästa programmerarna får sällan komplexa reguljära uttryck första gången. När de används korrekt är reguljära uttryck dock ett kraftfullt verktyg för att söka, hitta och ersätta specifik text.