Heim >Web-Frontend >js-Tutorial >Wie verwende ich Alternationen in eckigen Klammern in regulären Ausdrücken (Regex)?
Verstehen des Problems mit Alternationen in eckigen Klammern
Beim Erstellen eines regulären Ausdrucks (Regex) für eine Suchmaschinenzeichenfolge sind Sie auf eine Herausforderung gestoßen mit Abwechslung in eckigen Klammern. Ihr regulärer Ausdruck zielt darauf ab, Zeichenfolgen mit „wd“ zusätzlich zu „word“ oder „qw“ abzugleichen. Obwohl Sie mit verschiedenen Ansätzen experimentiert haben, konnten Sie nicht das gewünschte Ergebnis erzielen.
Das einfache Einschließen mehrerer Zeichen in eckige Klammern führt in JavaScript nicht zu einer Abwechslung; es bezeichnet stattdessen einen Zeichensatz. Der Wechsel, der mehrere Alternativen innerhalb einer bestimmten Reihenfolge abgleicht, wird mithilfe von Klammern erreicht. Daher sollte die korrekte Syntax lauten:
.*baidu.com.*[/?].*(wd|word|qw){1}=
oder
.*baidu.com.*[/?].*(?:wd|word|qw){1}=
Durch das Einschließen der Alternativen („wd“, „word“ und „qw“) in Klammern aktivieren Sie Wechsel. Das „?:“ vor den Klammern im zweiten regulären Ausdruck macht die Gruppierung nicht erfassend, was verhindert, dass ihr beim Abgleich eine erfassende Gruppen-ID zugewiesen wird.
Das obige ist der detaillierte Inhalt vonWie verwende ich Alternationen in eckigen Klammern in regulären Ausdrücken (Regex)?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!