Glob pattern
Un glob pattern è una sintassi attraverso la quale si rappresenta un insieme di stringhe.
È la sintassi tradizionalmente usata nelle shell testuali dei sistemi Unix e Unix-like, ma anche MS-DOS per effettuare l'espansione di nomi di file e directory, ed essa riprende in piccola parte quella delle espressioni regolari.
Sintassi
[modifica | modifica wikitesto]In un glob pattern la maggior parte dei caratteri è vista in modo letterale (ad esempio "a
" corrisponde ad "a
", "main.c
" corrisponde a "main.c
"). Fanno eccezione a questa regola i metacaratteri:
Metacarattere | Descrizione |
---|---|
*
|
Rappresenta una sequenza di zero o più caratteri qualsiasi (quindi anche una sequenza vuota). Ad esempio, "abc* " trova corrispondenza in "abcde " ma anche in "abc " stesso.
|
?
|
Rappresenta un singolo carattere qualsiasi, che però deve essere presente. Ad esempio, "ab? " trova corrispondenza in "abc " e in "ab1 ", ma non in "ab ".
|
[caratteri]
|
Rappresenta un singolo carattere tra i caratteri specificati. Ad esempio " Volendo specificare anche una parentesi quadra chiusa, occorre specificarla come primo carattere, ad esempio con " È possibile specificare intervalli di caratteri nella forma " |
[!caratteri] (o anche [^caratteri] )
|
Rappresenta un singolo carattere che non è tra i caratteri specificati. Ad esempio "ab[!ef] " trova corrispondenza in tutte le stringhe di tre caratteri eccetto "abe " e "abf ". Anche in questo caso è possibile specificare intervalli e classi di caratteri.
Volendo specificare anche una parentesi quadra chiusa, occorre specificarla come primo carattere di seguito al punto esclamativo, ad esempio con " La variante con accento circonflesso " |
{caratteri}
|
Rappresenta più espansioni di caratteri separati da una virgola.
Ad esempio "{a,b?,c,ciao}" trova corrispondenza in "a","b" più un qualsiasi carattere (es. "ba","b1","bp"),"c" e la parola "ciao". |
Per far in modo che un metacarattere sia interpretato in maniera letterale occorre farlo precedere da una barra inversa "\
", ad esempio "ab\[cde
".
Voci correlate
[modifica | modifica wikitesto]Collegamenti esterni
[modifica | modifica wikitesto]- (EN) Denis Howe, glob, in Free On-line Dictionary of Computing. Disponibile con licenza GFDL
- (EN) 2.13 Pattern Matching Notation, in The Open Group Base Specifications Issue 6 IEEE Std 1003.1, 2004 Edition. URL consultato il 19-05-2008.
- (EN) glob, in The Jargon File (version 4.4.7). URL consultato il 20-05-2008.