2016-03-27 4 views
0

Ich bekomme CS1056: Unerwarteter Charakter '\' Kompilierungsfehler in der EmailReg-Zeile unten. Kann jemand helfen, was das Falsche hier ist? Ich habe auch ein paar mehr Regex-Muster, aber ich habe die gleichen Kompilierungsfehler.Jquery E-Mail-Regex CS1056: Unerwarteter Zeichen '' Kompilierungsfehler

das ist mein jquery Code.

<script>  
    $(document).ready(function() { 
     $('#Email').focusout(function(){ 
       var email=$('#Email').val(); 
       var emailReg = /^([\w-\.][email protected]([\w-]+\.)+[\w-]{2,4})?$/; 
       if(!emailReg.test(email)) { 
        $("#epostagecerlidegil").show(); 
       } else { 

       } 
      }); 
    }); 
</script> 
+0

Könnten Sie bitte eine Geige teilen, die das Problem zeigt? [Ich kann nicht repro] (https://jsfiddle.net/td5sb292/). –

+0

@ WiktorStribiżew, meine Vermutung ist der Fehler kommt von einem Tool wie Visual Studio die Regex kompilieren. – cdlane

+0

Dann ist [^ ([a-zA-Z0-9 _.-] + @ ([a-zA-Z0-9 _-] + [.]) + [A-zA-Z0-9 _-] {2,4 })? $ 'sollte OK funktionieren. –

Antwort

0

ich das erraten habe, ist Ihr Problem: [\w-\.]

Das primäre Problem ist, dass Sie für einen Bereich sind zu fragen, dass Sie entweder nicht die Absicht haben, oder nicht sinnvoll ist. Außerdem müssen Sie den Zeitraum nicht mit einem Backslash versehen. Also entweder: [\w\-.] oder [\w.-] ist was ich erwarten würde zu sehen.

+0

Der Bindestrich in '[\ w -.]' Wird als wörtlicher Bindestrich behandelt, das ist hier kein Problem. Siehe [diese Demo] (https://jsfiddle.net/td5sb292/). –