Tester di regex per JavaScript e Go (RE2)
Prova un'espressione regolare sul tuo testo con il motore di JavaScript o con il motore RE2 di Go, e guarda ogni corrispondenza, gruppo di cattura e sostituzione.
Riepilogo della sintassi dei due motori
| Token | Significato | JavaScript | Go (RE2) |
|---|---|---|---|
. | Qualsiasi carattere tranne un a capo. Con il flag s include anche gli a capo. | Sì | Sì |
\d \w \s | Una cifra, un carattere di parola, uno spazio bianco. Le maiuscole \D, \W e \S indicano il contrario. | Sì | Sì |
[abc] [^abc] [a-z] | Un carattere di un insieme, un carattere che non è nell'insieme, un carattere in un intervallo. | Sì | Sì |
^ $ | Inizio e fine del testo. Con il flag m, inizio e fine di ogni riga. | Sì | Sì |
\b \B | Un confine di parola, e una posizione che non è un confine di parola. | Sì | Sì |
* + ? {2,5} | Zero o più volte, una o più volte, zero o una volta, da 2 a 5 volte. Ognuno prende quanto più può. | Sì | Sì |
*? +? ?? {2,5}? | Gli stessi quantificatori, che prendono quanto meno possono. | Sì | Sì |
(…) (?:…) | Un gruppo di cattura, e un gruppo che raggruppa soltanto. | Sì | Sì |
(?<name>…) | Un gruppo di cattura con nome. Go accetta questa forma dalla versione 1.22, e (?P<name>…) in tutte le versioni. | Sì | Sì |
a|b | a oppure b. | Sì | Sì |
\p{L} \p{Lu} | Una proprietà Unicode: qualsiasi lettera, qualsiasi lettera maiuscola. In JavaScript serve il flag u. | Sì | Sì |
(?i) (?s) (?m) | Flag scritti dentro il pattern. In JavaScript i flag si impostano fuori. | No | Sì |
\A \z | Inizio e fine dell'intero testo, a prescindere dal flag m. | No | Sì |
[[:alpha:]] | Una classe di caratteri POSIX dentro un insieme. | No | Sì |
(?=…) (?!…) | Lookahead: ciò che segue deve corrispondere, o non deve corrispondere, senza essere consumato. | Sì | No |
(?<=…) (?<!…) | Lookbehind: ciò che precede deve corrispondere, o non deve corrispondere. | Sì | No |
\1 \k<name> | Backreference: lo stesso testo trovato da un gruppo precedente. | Sì | No |