Heim >Web-Frontend >js-Tutorial >Warum funktioniert mein regulärer JavaScript-Ausdruck nicht?
JavaScript RegEx funktioniert nicht?
Ihr Code überprüft die Rechtmäßigkeit eines Datumsformats mithilfe eines regulären Ausdrucks, gibt jedoch immer „false“ zurück. Das Problem liegt in der Konstruktion des regulären Ausdrucks.
Wenn Sie den regulären Ausdruck aus einer Zeichenfolge initialisieren, müssen Sie die Backslashes () im Muster in doppelte Anführungszeichen setzen. Dies liegt daran, dass der String-Parser Backslashes als Sonderzeichen für String-Konstanten behandelt.
Falscher Code:
var regEx = new RegExp("^(0[1-9]|1[0-2])/\d{4}$", "g");
Richtiger Code:
var regEx = new RegExp("^(0[1-9]|1[0-2])//\d{4}$", "g");
Oder, noch einfacher, verwenden Sie die Syntax regulärer Ausdrücke, ohne die Schrägstriche maskieren zu müssen:
var regEx = /^(0[1-9]|1[0-2])/\d{4}$/g;
Jetzt sollte der reguläre Ausdruck korrekt mit den Datumsangaben im Format „MM/JJJJ“ übereinstimmen. . Stellen Sie sicher, dass Sie alle in das reguläre Ausdrucksmuster eingebetteten Schrägstriche (/) in doppelte Anführungszeichen setzen.
Das obige ist der detaillierte Inhalt vonWarum funktioniert mein regulärer JavaScript-Ausdruck nicht?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!