Hogyan lehet a reguláris kifejezés kisbetűit érzéketlenné tenni?

Drupal Commerce szállítási szabályon dolgozom, és szabályos kifejezésre van szüksége ahhoz, hogy összehasonlítsa az irányítószámokat a vásárlói címmel az alábbiak szerint;

/^AB37|^AB38|^AB41/ 

Úgy találom, hogy ez a kód megkülönbözteti a kis- és nagybetűket, és nyugodtabbnak kell lennem, lehetővé téve a kisbetűk vagy a vegyesek használatát. zászló, de nem vagyok biztos benne, hogyan kell ezt alkalmazni.

Valaki kérem, adjon nekem egy példát?

Megjegyzések

  • Igen, hogy ' rajta van, használjon egy i jelzőt: /^AB37|^AB38|^AB41/i
  • Köszönöm a javaslatokat. Tudom, hogy a kérdés meglehetősen általános lehet, de kifejezetten a kereskedelem_hajózás általános használatára vonatkozik, ezért azt állítom, hogy ez nem téma.
  • @Clive Sikertelenül kipróbáltam a javaslatát I ' félek – a szabály egyáltalán nem vált ki. A mező súgó szövege a következő: ' Rendszeres kifejezés (" / (35 | 38) [0-9] {3} / ") vagy vesszővel elválasztott lista, beleértve a tartományokat (" 98, 100: 200 " ) '
  • A i zászló a végén jön. A szabályt az alábbi eszközzel tesztelheti: regexr.com – különben ' d azt állítom, hogy a DC itt téved, ha nem fog elfogadni egy érvényes regexet '.
  • Úgy tűnik, hogy @Kevin DC nem fogadja el az elválasztott vesszőt irányítószámok listája sem. Ezért próbálkozz a regexszel. Talán egy hiba

Válasz

A kis- és nagybetűk közötti különbség általában egy “i” karakter hozzáadása a határolósáv után, ilyesmi: / ^ AB37 | ^ AB38 | ^ AB41 / i

de az esettől függően módosítható. A JS-ben például új param (var re = new RegExp(myVar,"ig")) hozzáadása vagy a php-ben preg_match("[expression]i", $text, $matches);

Vélemény, hozzászólás?

Az email címet nem tesszük közzé. A kötelező mezőket * karakterrel jelöltük