Ich habe nicht viel Erfahrung mit JavaScript, aber ich versuche ein Tag-System zu erstellen, das anstelle von @
oder #
verwendet wird /
.
var start = /#/ig; // @ Match
var word = /#(\w+)/ig; //@abc Match
Wie könnte ich eine /
anstelle der verwenden #
. Ich habe versucht, etwas zu tun var slash = '/'
und hinzuzufügen + slash +
, aber das ist fehlgeschlagen.
javascript
regex
iBrazilian2
quelle
quelle
Antworten:
Sie können es so entkommen.
oder verwenden Sie einfach indexOf
quelle
Sie müssen
/
mit einem entkommen\
.quelle
Wenn Sie verwenden möchten, müssen
/
Sie es mit einem entkommen\
quelle
In regulären Ausdrücken ist "/" ein Sonderzeichen, das maskiert werden muss (AKA wird gekennzeichnet, indem ein \ davor gesetzt wird, wodurch jegliche spezielle Funktion, die es möglicherweise erfüllt, negiert wird).
Folgendes benötigen Sie:
Informieren Sie sich hier über RegEx-Sonderzeichen: http://www.regular-expressions.info/characters.html
quelle
Sie können die spezielle JS-Behandlung des Schrägstrichs auch umgehen, indem Sie ihn wie folgt in eine Zeichengruppe einschließen:
quelle
/[/]/
Unterscheidet das nachfolgende Trennzeichen visuell deutlicher als/\//
./[/]/
ist einfacher zu lesen und funktioniert, aber leider melden einige RegEx-Validatoren auch innerhalb einer Zeichengruppe "Ein nicht entkoppeltes Trennzeichen muss mit einem Backslash versehen werden" . Also habe ich wieder in die hässliche Form gewechselt ./\//
Sie können es umgehen, indem Sie ihm ein
\
(machen\/
) voranstellen , oder Sie können es verwendennew RegExp('/')
, um zu vermeiden, dass Sie dem regulären Ausdruck entkommen .Siehe Beispiel in JSFiddle .
quelle
Für mich habe ich versucht,
/
ein Datum in C # zu finden. Ich habe es nur gemacht mit(\/)
:In ähnlicher Weise sollte auch JavaScript verwendet werden können
(\/)
.quelle
Ich bin beim Extrahieren von durch
\
und begrenztem Text auf zwei Probleme im Zusammenhang mit dem Vorstehenden gestoßen/
und habe eine Lösung gefunden, die zu beiden passt, abgesehen von der Verwendungnew RegExp
, die\\\\
zu Beginn erforderlich ist . Diese Ergebnisse sind in Chrome und IE11.Der reguläre Ausdruck
funktioniert nicht. Ich denke, das
//
wird trotz des Fluchtcharakters als Beginn eines Kommentars interpretiert. Der reguläre Ausdruck (in meinem Fall gleichermaßen gültig, aber nicht allgemein)geht auch nicht. Ich denke, der zweite
/
beendet den regulären Ausdruck trotz des Fluchtcharakters.Was für mich funktioniert, ist darzustellen
/
als\x2F
, was die hexadezimale Darstellung von ist/
. Ich denke, das ist effizienter und verständlicher als die Verwendungnew RegExp
, aber natürlich braucht es einen Kommentar, um den Hex-Code zu identifizieren.quelle
Der Schrägstrich ist ein Sonderzeichen. Sie müssen also vor dem Schrägstrich einen Backslash hinzufügen, damit er funktioniert
wo / repräsentiert die Suche nach / Auf diese Weise Sie
quelle