GNU/Linux >> Linux Esercitazione >  >> Linux

Regex Cheat Sheet/Nozioni di base

Cheat sheet/Nozioni di base di Regex

Le espressioni regolari (regex o regexp) sono uno strumento molto utile per identificare modelli specifici in qualsiasi testo, il che aiuta a estrarre informazioni indipendentemente dal formato del testo.

Regex può essere utilizzato per convalidare input, rottamare web, trovare stringhe specifiche nei documenti, convalida della sintassi per compilatori e tanti altri esempi.

Regex è ampiamente utilizzato in più linguaggi di programmazione che utilizzano quasi la stessa sintassi, quindi questo articolo finge di mostrare gli operatori regex di base.

Le sezioni seguenti mostreranno i diversi operatori utilizzati per regex e alcuni esempi. Puoi anche testare le tue espressioni regolari con alcune spiegazioni in questa pagina.

Ancora

Personaggi Usa
^ Indica l'inizio della stringa. Corrisponderà solo alla stringa che inizia con i caratteri che seguono
$ Indica la fine della stringa. Questo corrisponderà a qualsiasi stringa che termina con i caratteri prima del simbolo '$'
abc Corrisponde a qualsiasi stringa che contiene la sequenza di caratteri "abc" su di essa

Alcuni esempi sono:

Esempio Descrizione Esempi di stringhe corrispondenti
^A Corrisponde a tutte le stringhe che iniziano con A A n mela è nell'albero", "A nuovo ristorante”
end$ Corrisponde a una stringa che termina con la sequenza di caratteri "fine" "La fine ”, “Facciamo fine
^Ciao mondo$ Corrisponde alla stringa esatta "Hello world" Ciao mondo
ordina Corrisponde a qualsiasi stringa che contenga il testo "ordine" "Il mio ordine il numero è 54”

Quantificatori

I quantificatori vengono utilizzati per rappresentare le volte in cui desideriamo che il personaggio o il gruppo di caratteri precedente appaia nella nostra corrispondenza.

Personaggi Usa
* Indica zero o più
+ Indica uno o più
? Indica zero o uno
x{n} Utilizzato per specificare il numero di volte ('n') che deve apparire il carattere precedente ('x')
x{n, } Utilizzato per specificare il numero minimo di volte ('n') che deve apparire il carattere precedente ('x')
x{n, m} Utilizzato per specificare il numero minimo ('n') e massimo ('m') di volte in cui deve apparire il carattere precedente ('x')

Alcuni esempi sono:

Esempio Descrizione Esempi di stringhe corrispondenti
ciao!* Corrisponde a qualsiasi stringa "ciao" seguita da zero o più caratteri "!" "Ciao ”, “ciao! ”, ciao!!
ciao!+ Corrisponde a qualsiasi stringa 'ciao' seguita da uno o più caratteri '!' "Ciao! ”, “ciao!!
ciao!? Corrisponde a qualsiasi stringa 'ciao' seguita da zero o uno '!' caratteri "Ciao ”, “ciao!
(ha){2,4} Corrisponde a qualsiasi stringa che ripete il gruppo di caratteri "ha" da due a quattro volte ahah ”, “ahahah ”, “ahahahah

O operatore

Personaggi Usa
a|b Corrisponde a qualsiasi stringa che contiene 'a' o 'b'
[ ] Viene usato per rappresentare una lista, quindi corrisponde a una stringa che contiene uno dei caratteri all'interno della lista

Alcuni esempi sono:

Esempio Descrizione Esempi di stringhe corrispondenti
se(a|e) Corrisponde a qualsiasi stringa che contenga il testo "se" seguito da una "a" o da una "e" "vedi ”, “mare
a[bcd] Corrisponde a qualsiasi stringa che contiene una 'a' seguita da 'b', 'c' o 'd' ab ”, “ac ”, “annuncio

Classi di caratteri

Gli operatori delle classi di caratteri consentono di abbinare i caratteri all'interno di una categoria (classe). Questi operatori offrono le loro negazioni, che sono le stesse dell'operatore normale ma in maiuscolo.

Personaggi Usa
\d Corrisponde a una singola cifra carattere
\w Corrisponde a una singola parola carattere (lettere, numeri e trattino basso)
\s Corrisponde a un singolo spazio bianco carattere, incluse tabulazioni e interruzioni di riga
\D Corrisponde a una singola non cifra carattere
\W Corrisponde a una singola non parola carattere (lettere, numeri e trattino basso)
\S Corrisponde a un singolo spazio non bianco carattere, incluse tabulazioni e interruzioni di riga
. Corrisponde a qualsiasi singolo carattere

Bandiere

Regex di solito usa il modulo /pattern/ . Alla fine, possiamo utilizzare i seguenti flag:

Bandiera Descrizione
g Il globale flag viene utilizzato per cercare tutte le singole corrispondenze all'interno della stringa. Se non viene utilizzata, l'espressione tornerà dopo la prima corrispondenza
m La multilinea flag permette di usare ^ e $ come l'inizio e la fine di una riga, non l'inizio e la fine della stringa, che può contenere più righe
i Gli insensibili flag rende l'espressione regolare senza distinzione tra maiuscole e minuscole

Conclusioni

Regex ha molti usi. Puoi combinare gli operatori semplici spiegati in questo articolo per creare ricerche di modelli complessi. Un esempio è convalidare un indirizzo email, questo può essere eseguito con la seguente espressione regolare:

^[\w-\.]+@([\w-]+\.)+[\w-]{2,4}$

Questo esempio corrisponde a una stringa completa per la quale ricerca un modello con il seguente ordine:

  • [\w-\.]+ :una combinazione di uno o più caratteri alfanumerici, trattini o punti
  • @ :il simbolo @
  • ([\w-]+\.)+ :una o più combinazioni di uno o più caratteri alfanumerici o trattini terminati con un punto (per domini e sottodomini nell'e-mail come email.rackspace.)
  • [\w-]{2,4} :una combinazione di 2, 3 o 4 caratteri o trattini per la parte finale dell'e-mail (com)

Proprio come questo esempio, ce ne sono molti altri che possono essere facilmente implementati per scopi diversi.


Linux
  1. Come usare Tmux + Cheat Sheet

  2. Foglio informativo sui comandi di Linux

  3. Comandi di base vi (cheat sheet)

  4. Cheat sheet per le autorizzazioni di file/directory Linux

  5. Foglio informativo sui comandi di base di Linux

Cheat sheet sui comandi Linux:con esempi

Cheat Sheet di Git Commands

Foglio informativo sui comandi MySQL

Cheat sheet sulle scorciatoie da tastiera di Kali Linux

Comandi di base nano (cheat sheet)

Comandi di base di vim (cheat sheet)