Groß- und Kleinschreibung wird in JavaScript nicht berücksichtigt

121

Ich möchte eine Abfragezeichenfolge mit JavaScript aus meiner URL extrahieren und einen Vergleich ohne Berücksichtigung der Groß- und Kleinschreibung für den Namen der Abfragezeichenfolge durchführen. Folgendes mache ich:

var results = new RegExp('[\\?&]' + name + '=([^&#]*)').exec(window.location.href);
if (!results) { return 0; }
return results[1] || 0;

Der obige Code führt jedoch eine Suche mit Groß- und Kleinschreibung durch. Ich habe es versucht, /<regex>/iaber es hat nicht geholfen. Irgendeine Idee, wie das erreicht werden kann?

Amit
quelle
5
Das Literalformat / regex / i sollte funktionieren, es sei denn, Sie haben versucht, es zu verketten oder so ...
Alex

Antworten:

211

Sie können den Modifikator 'i' hinzufügen, der "Groß- / Kleinschreibung ignorieren" bedeutet.

var results = new RegExp('[\\?&]' + name + '=([^&#]*)', 'i').exec(window.location.href);
Michał Niklas
quelle
2
Wie mache ich das zu einer Saite?
Kardinal - Wiedereinsetzung Monica
11
@ CardinalSystem/abc/i
über
42

Modifikatoren werden als zweiter Parameter angegeben:

new RegExp('[\\?&]' + name + '=([^&#]*)', "i")
Brad Mace
quelle
odernew RegExp('^' + string + '$', "i")
Vadim
6

Einfacher Einzeiler. Im folgenden Beispiel wird jeder Vokal durch ein X ersetzt.

function replaceWithRegex(str, regex, replaceWith) {
  return str.replace(regex, replaceWith);
}

replaceWithRegex('HEllo there', /[aeiou]/gi, 'X'); //"HXllX thXrX"
Diego Fortes
quelle