2016-09-21 5 views
5

Dies war gerade vor einem Tag arbeiten, aber jetzt Ausnahme werfen. Ich habe Regex in den Online-Verifier eingefügt und es sieht gut aus?Warum ist das kein gültiger regulärer Ausdruck?

Was fehlt mir?

<input type="text" class="form-control" name="nickname" id="nickname" value="Alicia" 
     pattern="[\w\s\-\(\)\!\,\.]{3,45}"> 

Pattern attribute value [\w\s\-\(\)\!\,\.]{3,45} is not a valid regular expression: Uncaught SyntaxError: Invalid regular expression: /[\w\s\-\(\)\!\,\.]{3,45}/ : Invalid escape

Danke für die Hilfe!

Casey

Antwort

6

Sieht für mich gültig aus, obwohl Chrome tatsächlich klagen.

In jedem Fall müssen Sie nicht alle diese Zeichen innerhalb einer Zeichenklasse entkommen lassen. Sie sollten in der Lage sein,

pattern="[\w\s()!,.-]{3,45}" 

zu verwenden, die für mich in Ordnung zu funktionieren scheint.

+0

Ich habe das gleiche Problem mit einem sehr einfachen gültigen Regex (seit Jahren erfolgreich verwendet) und die neueste Version von Chrome gibt mir den gleichen Fehler wie OP und ein Pop-up von "Bitte entsprechen das angeforderte Format" Ich habe die Login-Seite geknackt. – jdf

+0

Unsere Anmeldeseite ist mit dem Fehler "Ungültiger Escape" in Chrome und "das Muster ist kein gültiger regulärer Ausdruck: ungültige Identitätsentsprechung in regulärem Ausdruck" in Firefox fehlerhaft, obwohl dieser Regex monatelang funktioniert hat. In einer Zeichenklasse gab es ein geflüchtetes Anführungszeichen "\", das den Ärger verursachte. –

+0

danke, es spart Stunden – saqibahmad

Verwandte Themen