Come rendere unespressione regolare insensibile al maiuscolo / minuscolo?

Sto lavorando a una regola di spedizione Drupal Commerce e necessita di unespressione regolare per confrontare i codici postali con lindirizzo dellacquirente come di seguito;

/^AB37|^AB38|^AB41/ 

Sto riscontrando che questo codice fa distinzione tra maiuscole e minuscole e ho bisogno che sia più rilassato consentendo lettere minuscole o miste.

Ho letto che ho bisogno di una “i” flag, ma non sono sicuro di come applicarlo.

Qualcuno potrebbe fornirmi un esempio?

Commenti

  • Sì, ' è perfetto, utilizzi un i flag: /^AB37|^AB38|^AB41/i
  • Grazie per i suggerimenti. Mi rendo conto che la domanda potrebbe essere abbastanza generale, ma riguarda specificamente un caso duso comune per commerce_shipping quindi direi che non è fuori tema.
  • @Clive Ho provato il tuo suggerimento senza successo I ' ho paura: la regola non viene attivata affatto. Il testo della guida del campo recita: ' Unespressione regolare (" / (35 | 38) [0-9] {3} / ") o un elenco separato da virgole, inclusi gli intervalli (" 98, 100: 200 " ) '
  • Il flag i si trova alla fine. Puoi testare la tua regola utilizzando questo strumento: regexr.com , altrimenti ' sostengo che DC sia sbagliato qui se non ' accetterà unespressione regolare valida.
  • @Kevin DC non ' sembra accettare una virgola separata da virgole elenco dei codici postali. Quindi prova con regex. Forse un bug

Risposta

La distinzione tra maiuscole e minuscole di solito è laggiunta di un carattere “i” dopo la barra delimitatore, qualcosa del genere: / ^ AB37 | ^ AB38 | ^ AB41 / i

ma a seconda del caso può essere cambiato. In JS, ad esempio, si aggiunge un nuovo parametro (var re = new RegExp(myVar,"ig")) o in php è preg_match("[expression]i", $text, $matches);

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *