Reguljära uttryck Lathund
Matcha tecken
| [abc] | Matchar något av tecknen a, b eller c |
| [^abc] | Matchar inte tecknen a, b eller c. “^” är endast effektivt om det visas som det första tecknet |
| [a-g] | Matchar valfritt tecken i intervallet a-g |
| [^a-g] | Matchar inget tecken i intervallet a-g |
| [H-N] | Matchar valfritt tecken i intervallet H-N |
| [0-9] | Matchar valfritt tecken i intervallet 0-9 |
| [a-gH-N] | Matchar valfritt tecken i intervallen a-g eller H-N |
| Wildcards (Jokertecken): | |
| . | [^\n\r], matchar alla tecken utom radbrytning |
| \s | whitespace: radbrytning, tabb, mellanslag etc. |
| \S | [^\s] (Alla tecken som inte är whitespace) |
| \d | siffra: [0-9] |
| \D | [^\d] (Alla tecken som inte är siffror) |
| \w | ordtecken: [0-9A-Za-z_] |
| \W | [^\w] (Alla tecken som inte är ordtecken) |
Matcha grupper
| (a | b) |
| (…) | Fångstgrupp (Capture group) |
| (?:…) | Icke-fångande grupp |
| (?<name>…) eller (?’name’…) | Namngiven fångstgrupp, “name” kan anpassas |
| (?(condition)true_regex | false_regex) |
group(0) används för att hämta hela den matchade strängen, medan group(>0) kan hämta undergrupper från det totala resultatet.
Obs: Namngivna fångstgrupper stöds sedan Java 1.7 (genom att skicka strängen “name” som parameter till group-metoden). JS och Python stöder för närvarande inte namngivna fångstgrupper nativt.
Frekvensintervall (Kvantifikatorer)
| {3} | Föregående objekt visas exakt 3 gånger, motsvarar {3,3} |
| {3,6} | Föregående objekt visas 3 till 6 gånger |
| {3,} | Föregående objekt visas minst 3 gånger |
| {0,6} | Föregående objekt visas högst 6 gånger |
| Wildcards: | |
| * | {0,} (Noll eller fler) |
| + | {1,} (En eller fler) |
| ? | {0,1} (Noll eller en) |
| \w* | Girigt läge (Greedy) |
| \w*? | Icke-girigt läge |
Ankare (Positionsmarkörer)
| ^ | Början av strängen |
| $ | Slutet av strängen |
| \b | Boundary, ordgräns |
| \B | Ingen ordgräns |
| Lookaround-assertioner: | |
| (?=exp) | Positiv lookahead (suffix är exp) |
| (?<=exp) | Positiv lookbehind (prefix är exp) |
| (?!exp) | Negativ lookahead (inget suffix exp) |
| (?<!exp) | Negativ lookbehind (inget prefix exp) |
\b(\w+)\b är ekvivalent med (?<=\W?)(\w+)(?=\W?)