JavaScript/Espressioni regolari: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Gian BOT (discussione | contributi)
m Bot: sostituzione tag obsoleti
Riga 32:
! Carattere !! Abbina !! Esempio
|-
| <ttcode>\d</ttcode> || Una cifra da 0 a 9 || <ttcode>\d\d\d</ttcode> abbina <ttcode>423</ttcode> ma non <ttcode>04</ttcode>
|-
| <ttcode>\D</ttcode> || Qualsiasi carattere escluso le cifre || <ttcode>\D</ttcode> abbina <ttcode>%</ttcode> o <ttcode>r</ttcode>, ma non <ttcode>3</ttcode>
|-
| <ttcode>\w</ttcode> || Ogni carattere di parola (A-Z, a-z, 0-9, underscore) || <ttcode>\w\w</ttcode> abbina <ttcode>A2</ttcode> o <ttcode>3_</ttcode>, ma non <ttcode>d$</ttcode> o <ttcode>()</ttcode>
|-
| <ttcode>\W</ttcode> || Ogni carattere non di parola || <ttcode>\W</ttcode> non abbina <ttcode>5</ttcode>, <ttcode>_</ttcode>, <ttcode>a</ttcode>
|-
| <ttcode>\s</ttcode> || Ogni carattere di spazio (spazio, tab, nuova riga, ecc...) || <ttcode>\s</ttcode> abbina ''tab'' o <ttcode>\n</ttcode> ma non <ttcode>.</ttcode>
|-
| <ttcode>\S</ttcode> || Ogni carattere non di spazio || <ttcode>\S\s</ttcode> abbina "<ttcode>% </ttcode>", ma non <ttcode>%_</ttcode>
|-
| <ttcode>.</ttcode> || Ogni carattere singolo || <ttcode>.</ttcode> abbina <ttcode>b</ttcode> e <ttcode>°</ttcode>
|-
| <ttcode>[...]</ttcode> || Qualsiasi carattere indicato tra le parentesi || <ttcode>[ciao]</ttcode> abbina <ttcode>c</ttcode> e <ttcode>o</ttcode>, ma non <ttcode>b</ttcode>; <ttcode>[0-9]</ttcode> equivale a <ttcode>\d</ttcode>, perché abbina ogni carattere tra 0 e 9 (ad esempio <ttcode>5</ttcode> ma non <ttcode>k</ttcode>)
|-
| <ttcode>[^...]</ttcode> || Qualsiasi carattere esclusi quelli indicati tra le parentesi || <ttcode>[^ciao]</ttcode> abbina <ttcode>b</ttcode> e <ttcode>q</ttcode>, ma non <ttcode>c</ttcode>; <ttcode>[^a-z]</ttcode> abbina ogni carattere che non è compreso tra la a e la z (ad esempio <ttcode>@</ttcode> ma non <ttcode>k</ttcode>)
|}
 
Riga 77:
! Carattere !! Abbina !! Esempio
|-
| <ttcode>{''n''}</ttcode> || Abbina l'elemento precedente ''n'' volte || <ttcode>\d{3}</ttcode> abbina <ttcode>223</ttcode> ma non <ttcode>04</ttcode>
|-
| <ttcode>{''n'',}</ttcode> || Abbina l'elemento precedente ''n'' o più volte || <ttcode>\w{2,}</ttcode> abbina <ttcode>ac</ttcode>, <ttcode>a4cr</ttcode>, <ttcode>a_4</ttcode> ma non <ttcode>4</ttcode> o <ttcode>d4gsz'''%'''</ttcode>
|-
| <ttcode>{''n'', ''m''}</ttcode> || Abbina l'elemento precedente da un minimo di ''n'' volte a un massimo di ''m'' volte || <ttcode>\d{3,5}</ttcode> abbina <ttcode>223</ttcode> , <ttcode>3566</ttcode> ma non <ttcode>04</ttcode> o <ttcode>692159</ttcode>
|-
| <ttcode>?</ttcode> || Abbina l'elemento precedente zero o una volta || <ttcode>ciao?</ttcode> abbina <ttcode>cia</ttcode> oppure <ttcode>ciao</ttcode> (il punto interrogativo si riferisce solo all'ultimo carattere)
|-
| <ttcode>+</ttcode> || Abbina l'elemento precedente una o più volte || <ttcode>ciao+</ttcode> abbina <ttcode>ciao</ttcode> oppure <ttcode>ciaoooooo</ttcode>
|-
| <ttcode>*</ttcode> || Abbina l'elemento precedente zero o più volte || <ttcode>.*</ttcode> abbina qualsiasi stringa (sia che sia vuota sia che contenga caratteri speciali); <ttcode>a*</ttcode> abbina una stringa vuota ma anche <ttcode>a</ttcode>, <ttcode>aa</ttcode>, ecc...
|}
 
Riga 107:
! Carattere !! Abbina !! Esempio
|-
| <ttcode>^</ttcode> || Abbina l'inizio della stringa o, nel caso di stringhe su righe multiple, l'inizio di una riga.<ref name=multiline>Per lavorare con stringhe su più righe si deve impostare la proprietà <code>multiline</code> dell'oggetto RegExp su <code>true</code> (<code>myRegex.multiline = true;</code>).</ref> || <ttcode>^\d</ttcode> abbina <ttcode>2</ttcode>, ma solo se ad inizio riga
|-
| <ttcode>$</ttcode> || Abbina la fine della stringa o, nel caso di stringhe su righe multiple, la fine di una riga.<ref name=multiline>Per lavorare con stringhe su più righe si deve impostare la proprietà <code>multiline</code> dell'oggetto RegExp su <code>true</code> (<code>myRegex.multiline = true;</code>).</ref> || <ttcode>\w$</ttcode> abbina <ttcode>a</ttcode>, ma solo se a fine riga
|-
| <ttcode>\b</ttcode> || Abbina un limite di parola, cioè il punto tra la fine di una parola e il primo carattere di parola || <ttcode>a\b</ttcode> abbina <ttcode>a</ttcode>, ma solo se si trova alla fine di una parola. Questo può servire se si vuole abbinare solo una parola: <code>\bparola\b</code>.
|-
| <ttcode>\B</ttcode> || Abbina una posizione che non è un limite di parola || <ttcode>\Ba\B</ttcode> abbina <ttcode>a</ttcode>, ma solo se si trova in mezzo ad una parola, non agli estremi
|}
{{references}}
Riga 152:
* <code>\d+</code> abbina una o più cifre disposte di seguito, che costituiscono la parte intera della nostra misura
* il carattere di punto con davanti la barra non sta a significare il metacarattere punto bensì il punto vero e proprio (<code>.</code>), che delimita i decimali. <code>[\.,]</code> serve per abbinare o un punto o una virgola;
* <code>[\.,]\d+</code> abbina così la parte decimale della misura (es. <ttcode>.474</ttcode>); questa tuttavia, essendo opzionale (nel caso di numeri interi) è posta tra parentesi e seguita da <code>?</code> che indica che la parte decimale può essere presente una volta o non esistere affatto;
* <code>(\d+([\.,]\d+)?)</code> è infine tutto tra parentesi per permettere l'utilizzo del backreference;
* <code>gi</code> indicano di effettuare un abbinamento globale non sensibile alle maiuscole.