Il codice Ascii nella regex

Per trovare un carattere tramite il suo codice ASCII in una espressione regolare utilizzo i comandi \x.

\x[codice Ascii]

A cosa serve il comando \x?

Questo comando è molto utile quando devo cercare qualcosa in un testo scritto in codice binario. E' invece inutile nei testi normali.

Un esempio pratico

Voglio trovare il carattere A in un testo.

Nel codice ASCII il carattere A è associato al codice 41.

Quindi, scrivo la seguente espressione regolare \x41.

l'espressione regolare per individuare il carattere A

Nel matching la regex seleziona tutti i caratteri A presenti nel testo.

Il risultato è esattamente lo stesso di una ricerca semplice.

un esempio di ricerca semplice

Nota. Nel codice Ascii la lettera A maiuscola e minuscola hanno codici numerici diversi (A=41 , a=61). Per questa ragione il carattere "a" minuscolo non viene selezionato. Per selezionarlo dovei inserire una OR (|) e aggiungere anche il codice della "a" minuscola ossia \x41|\x61.
un esempio di comandi \x in un'espressione OR

Come cercare una parola in Ascii con la regex

Per trovare una parola tramite il codice Ascii devo costruire un'espressione regolare con tanti \x quanti sono i caratteri della parola che voglio cercare.

In ciascun comando \x devo indicare il codice del carattere.

Un esempio pratico

Voglio trovare l'occorrenza "Ab" nel testo. In Ascii i caratteri "A" e "b" hanno rispettivamente i codici 41 e 62.

Per trovare questa parola devo scrivere \x41\x62

un esempio di regex per trovare una parola in Ascii

L'espressione regolare trova così l'occorrenza "Ab" nel testo.

E così via.

 


 

Segnalami un errore, un refuso o un suggerimento per migliorare gli appunti

FacebookTwitterLinkedinLinkedin
knowledge base

Regular expressions