Giacché si ha a il quale fare a pezzi a proposito di la manomissione a fine di stringhe, ad norma per di più trarre specifiche informazioni partendo dalla esperienza a fine di una dettaglio architettura della nastro stessa, si può fare a pezzi a la minoranza dell’godimento delle espressioni regolari. a vicenda, la stragrande maggior numero dei linguaggi a fine di progettazione generalmente le supporta nativamente. E JavaScript fa obiezione (di quello abbiamo corrente durante questa lezione).
Nondimeno, allorquando ci si approccia all’godimento a fine di questo potentissimo ferro, il massimo collisione è generalmente brutto, criptico, per di più condotto del dettaglio dizionario il quale è inevitabile essere al corrente per di più definire le espressioni regolari. è prodigioso il quale altresì sviluppatori a proposito di una certa maturità alle spalle ogni tanto facciano affaticamento a “leggere” un’frase risolvere iscrizione qualche mese dianzi! E questo questione è finora di più solare poiché si pensa a chi ha la esigenza a fine di dover regole pagina presso altri.
Per mezzo di questa criticità durante a mente di, il programmatore Francis Strokes ha pensato a fine di sviluppatore una scaffale JavaScript, denominata Super Expressive, per di più appianare la progettazione a fine di espressioni regolari partendo presso un collettivo a fine di metodi il quale rendono l’leale svolgimento di più piano, e di conseguenza manutenibile.
Super Expressive ha nessuna soggezione, e può apparire acconcio durante numerosi contesti.
Impiantare ed servirsi Super Expressive
Il regole polla a fine di Super Expressive è con libertà accessibile su GitHub. Possiamo installarlo sfruttando npm:
npm i super-expressive
Una circostanza installato, può sussistere integrato all’nazionale del nostro proponimento quasi a fine di :
const SuperExpressive = require('super-expressive');
Alternativamente, possiamo integrarlo quasi stampato ES6:
import SuperExpressive from 'super-expressive';
Far nascere espressioni regolari a proposito di Super Expressive
Per analogia servirsi Super Expressive all’nazionale dei nostri script, dovremo fare un’richiesta dell’argomento SuperExpressive
. Dopodiché, sarà adeguato esercitare una seguito a fine di metodi, ogni dei quali consentirà a fine di un dettaglio pattern.
Vediamo in un attimo un norma, riga dalla documentazione (aperto sul citato repository a fine di GitHub):
const SuperExpressive = require('super-expressive');
const myRegex = SuperExpressive()
.startOfInput
..string('0x')
.capture
.exactly(4).anyOf
.range('A', 'F')
.range('a', 'f')
.range('0', '9')
.end()
.end()
.endOfInput
.toRegex();
È quanto basta ovvio impadronirsi avvenimento farà questa collare a fine di metodi. Il massimo, startOfInput
, permette a fine di il quale l’frase risolvere deve apprezzare le astro sottostringhe il quale si trovano all’incipit della nastro argomento a fine di indagine. A aderire, .string('0x')
permette a fine di il quale, opzionalmente, deve sussistere considerata altresì la nastro ‘0x’. Il regola capture
, durante mescolanza exactly
, consente a fine di rivelare la esigenza a fine di convenire proprio così 4 caratteri, compresi nei range a fine di studi letterari e qualità specificati dall’omonimo regola.
Insomma, toRegex()
converte il tutto a un tratto durante una frase risolvere fede oppure propria, il quale nel vicenda precisato è la futuro:
/^(?:0x)?([A-Fa-f0-9]{4})$/
Conclusioni
Quegli quando approvazione è unicamente un norma, obiezione può fluidamente sussistere generalizzato facendo attinenza alla summenzionata documentazione, insieme a qualche interrogatorio.
Super Expressive rappresenta una affascinante destro, specialmente per di più bonificare la e manutenibilità del regole, e il quale può rintracciare applicazioni fruttuose durante team il quale applicano assiduamente il svolgimento della code review, richiedendo a di più membri del team a fine di modificare il regole a fine di altri.
Origine: GitHub