Model de glob

De la Wikipedia, enciclopedia liberă.
Salt la navigare Salt la căutare

Un model glob este o sintaxă prin care este reprezentat un set de șiruri .

Este sintaxa utilizată în mod tradițional în shell-urile de text ale sistemelor Unix și Unix-like , dar și MS-DOS pentru a efectua extinderea numelor de fișiere și a directoarelor și reproduce într-o mică parte cea a expresiilor regulate .

Sintaxă

Într-un model glob , majoritatea personajelor sunt văzute literalmente (de exemplu, „ a ” se potrivește cu „ a ”, „ main.c ” se potrivește cu „ main.c ”). Excepții de la această regulă sunt wild cards :

Comodul Descriere
* Reprezintă orice secvență de zero sau mai multe caractere (deci și o secvență goală). De exemplu, „ abc* ” se potrivește cu „ abcde ”, dar și cu „ abc ” în sine.
? Reprezintă orice caracter unic, dar trebuie să fie prezent. De exemplu, „ ab? ” Se potrivește cu „ abc ” și „ ab1 ”, dar nu cu „ ab ”.
[ caratteri ]

Reprezintă un singur caracter dintre caracterele specificate. De exemplu, „ a[bB]c ” se potrivește cu „ abc ” și „ aBc ”.

Dacă doriți și să specificați o paranteză pătrată de închidere, trebuie să o specificați ca primul caracter, de exemplu cu „ []xyz] ”.

Puteți specifica intervale de caractere sub forma „ inizio - fine ”, de exemplu „ [az] ” sau „ [0-9] ” (dacă doriți să indicați explicit o cratimă, trebuie să o specificați ca ultimul caracter, pentru exemplu " [0-9-] ") și, de asemenea, clase de caractere predefinite, cum ar fi " [:alpha:] " sau [:digit:] care se găsesc și în expresii regulate . De exemplu „ [[:alpha:]123] „ se potrivește cu „ a ”, „ b ”, „ 1 ”, „ Z ”.

[! caratteri ] (sau chiar [^ caratteri ] ) Reprezintă un singur caracter care nu se află printre caracterele specificate. De exemplu, „ ab[!ef] ” se potrivește cu toate șirurile de trei caractere, cu excepția „ abe ” și „ abf ”. Din nou, intervalele și clasele de caractere pot fi specificate.

Dacă doriți și să specificați o paranteză pătrată de închidere, trebuie să o specificați ca primul caracter după [!]x|-yz] exclamării, de exemplu cu „ [!]x|-yz] ”.

Varianta caret " ^ " este în general disponibilă prin analogie cu expresiile regulate, deși standardul POSIX specifică faptul că comportamentul în acest caz este nedefinit.

{ caratteri } Reprezintă expansiuni de caractere multiple separate printr-o virgulă.

De exemplu „{a, b ?, C, hello}” se potrivește cu „a”, „b” plus orice caracter (de exemplu „ba”, „b1”, „bp”), „c” și cuvântul „Hello”.

Pentru ca o metacaracter să poată fi interpretată literal, trebuie să fie precedată de o bară inversă " \ ", de exemplu " ab\[cde ".

Elemente conexe

linkuri externe

  • ( RO ) 2.13 Notare de potrivire a modelelor , în Specificațiile de bază ale grupului deschis Numărul 6 IEEE Std 1003.1, ediția 2004 . Adus 19.05.2008 .
  • (EN) glob , în The Jargon File (versiunea 4.4.7). Adus 20.05.2008 .
Informatică Portal IT : accesați intrările Wikipedia care se ocupă cu IT