Expresii regulate în pluginul Cel ce Redenumeste
Cel ce Redenumeste folosește expresii regulate mai puternice decât căutarea și vizualizatorul intern Sally. Extinde biblioteca REGEXP, lucrarea remarcabilă a lui Henry Spencer. Citiți întâi Sintaxa expresiilor regulate din Sally, apoi extensiile Cel ce Redenumeste inspirate de Perl.
Sintaxă extinsă
- '*?' – varianta minimală a lui '*', cu 0 sau mai multe potriviri
- '+?' – varianta minimală a lui '+', cu 1 sau mai multe potriviri
- '??' – varianta minimală a lui '?', cu 0 sau 1 potriviri
- '$' – la sfârșitul expresiei se potrivește cu sfârșitul rândului sau înaintea rândului nou final
- '( )' – unește expresiile dintre paranteze și capturează subșirul potrivit; vedeți acest exemplu
- '(?: )' – funcționează ca „( )”, fără capturarea subșirului
Notă: Varianta minimală se potrivește de numărul minim posibil de ori.
Aserțiuni de lățime zero
Următoarele aserțiuni nu se potrivesc cu un caracter, ci verifică o condiție adevărată sau falsă:
| Aserțiune | Semnificație |
|---|---|
| \b | Se potrivește cu o limită de cuvânt. |
| \B | Se potrivește unde nu există limită de cuvânt. |
| \A | Se potrivește numai la începutul șirului. |
| \Z | Se potrivește numai la sfârșitul șirului sau înaintea rândului nou final. |
| \z | Se potrivește numai la sfârșitul șirului. |
| (?= ) | Aserțiune pozitivă înainte: „j(?=ohn)” găsește „j” în „john”, dar nu în „june”. |
| (?! ) | Aserțiune negativă înainte: „j(?!ohn)” găsește „j” în „june”, dar nu în „john”. |
| (?<= ) | Aserțiune pozitivă în urmă: „(?<=joh)n” găsește „n” în „john”, dar nu în „joan”. |
| (?<! ) | Aserțiune negativă în urmă: „(?<!joh)n” găsește „n” în „joan”, dar nu în „john”. |
În clasele de caractere, „\b” reprezintă backspace, nu limita unui cuvânt.
Clase de caractere POSIX
Sunt disponibile următoarele clase POSIX:
| Clasă | Echivalent cu bară inversă | Semnificație |
|---|---|---|
| alpha | Caractere alfabetice. | |
| alnum | Caractere alfanumerice. | |
| ascii | Caractere ASCII. | |
| cntrl | Caractere de control. | |
| digit | \d | Cifre zecimale. |
| graph | Caractere imprimabile și vizibile; spațiul este imprimabil, dar invizibil. | |
| lower | Litere mici. | |
| Caractere imprimabile, adică fără cele de control. | ||
| punct | Punctuație, fără litere, cifre, controale sau spații. | |
| space | \s | Spațiere, de exemplu spațiu, TAB și avans de pagină. |
| upper | Litere mari. | |
| word | \w | Caractere alfanumerice și subliniere („_”). |
| xdigit | Cifre hexazecimale. |
Negați o clasă prefixând numele cu „^”.
Folosire: [[:alpha:]] pentru litere, [01[:alpha:]%] pentru litere plus 0, 1 și %, [[:^digit:]] pentru orice în afară de cifre zecimale.
Forme scurte ale unor clase
Sunt disponibile formele scurte următoare:
| Clasă | Semnificație |
|---|---|
| \w | Caractere alfanumerice și subliniere („_”). |
| \W | Toate caracterele în afară de alfanumerice și subliniere („_”). |
| \s | Spațiere, de exemplu spațiu, TAB și avans de pagină. |
| \S | Toate caracterele în afară de spațiere, precum spațiu, TAB și avans de pagină. |
| \d | Cifre zecimale. |
| \D | Toate caracterele în afară de cifre zecimale. |
Caractere speciale
Sunt disponibile caracterele speciale următoare:
| Caracter special | Semnificație |
|---|---|
| \t | tabulator |
| \n | rând nou |
| \r | retur de car |
| \f | avans de pagină |
| \a | alarmă sonoră |
| \b | ștergere înapoi |
| \x5A | caracterul 'Z' cu valoarea 0x5A în hexazecimal |
From the Sally manual (GPL-2.0-or-later), © 1997-2023 Open Salamander Authors; © 2025-2026 Elias Bachaalany. Source: manual source (zip) · original page in the Sally repository