2016-08-04 8 views
0

Ich versuche zu bestimmen, ob ein Wert einer Zeichenfolge entspricht, die vom Benutzer eingegeben wurde. Wenn ich versuche, ein Dollarzeichen zu vergleichen, nehme ich die Eingabezeichenfolge und ersetze das Dollarzeichen durch ein entgangenes Dollarzeichen ("\\ $"). Dies stimmt jedoch nicht überein, aber es wird übereinstimmen, wenn ich diesen Wert nicht einer Variablen zuweiße, sondern einfach die literale Zeichenfolge. Hier ist eine Konsole Momentaufnahme darstellt dies:Match Escaped Dollar Anmelden im Literal, aber nicht variabel

enter image description here

warum ist das passiert ??

Antwort

0

Das ist nicht, wie funktioniert genau zu entkommen, betrachten:

enter image description here

Ihre b.toString() !== "\\$"

Statt "$".replace("$", "\\\\$") Sie "$".replace("$", "\\$")

enter image description here

+0

Ohh wollen, da die Zeichenfolge die wörtliche benötigt Doppelter Schlag Ich dachte 'b' brauchte es auch. – bfieck

Verwandte Themen