Clojure - Espressioni regolari
UN regular expressionè un modello utilizzato per trovare sottostringhe nel testo. Le espressioni regolari sono utilizzate in una varietà di linguaggi di programmazione e molto utilizzate nei linguaggi di programmazione di tipo LISP.
Di seguito è riportato un esempio di un'espressione regolare.
//d+
L'espressione regolare sopra viene utilizzata per trovare un'ulteriore occorrenza di una cifra in una stringa. I caratteri // vengono utilizzati per garantire che i caratteri "d" e "+" siano utilizzati per rappresentare un'espressione regolare.
In generale, le espressioni regolari funzionano con il seguente insieme di regole.
Esistono due caratteri posizionali speciali utilizzati per indicare l'inizio e la fine di una riga: caret (∧) e segno di dollaro ($):
Le espressioni regolari possono includere anche quantificatori. Il segno più (+) rappresenta una o più volte, applicato all'elemento precedente dell'espressione. L'asterisco (*) viene utilizzato per rappresentare zero o più occorrenze. Il punto interrogativo (?) Indica zero o una volta.
Il metacarattere {e} viene utilizzato per abbinare un numero specifico di istanze del carattere precedente.
In un'espressione regolare, il simbolo del punto (.) Può rappresentare qualsiasi carattere. Questo è descritto come il carattere jolly.
Un'espressione regolare può includere classi di caratteri. Un insieme di caratteri può essere dato come una semplice sequenza di caratteri racchiusi nei metacaratteri [e] come in [aeiou]. Per intervalli di lettere o numeri, è possibile utilizzare un separatore di trattini come in [a – z] o [a – mA – M]. Il complemento di una classe di caratteri è indicato da un accento circonflesso all'interno delle parentesi quadre come in [∧a – z] e rappresenta tutti i caratteri diversi da quelli specificati.
I seguenti metodi sono disponibili per le espressioni regolari.
Sr.No. | Metodi e descrizione |
---|---|
1 | ri-modello Restituisce un'istanza di java.util.regex.Pattern. Questo viene quindi utilizzato in ulteriori metodi per la corrispondenza dei modelli. |
2 | Ritrovato Restituisce la successiva corrispondenza regex, se presente, di stringa a pattern, utilizzando java.util.regex.Matcher.find () |
3 | sostituire La funzione di sostituzione viene utilizzata per sostituire una sottostringa in una stringa con un nuovo valore di stringa. La ricerca della sottostringa viene eseguita utilizzando un pattern. |
4 | sostituire prima La funzione di sostituzione viene utilizzata per sostituire una sottostringa in una stringa con un nuovo valore di stringa, ma solo per la prima occorrenza della sottostringa. La ricerca della sottostringa viene eseguita utilizzando un pattern. |