2013-07-01 5 views
0

Я что-то упустил? Это регулярное выражение для проверки подлинности электронной почты, и похоже, что одна из косых черт бросает выделение синтаксиса.Regex распутал подсветку синтаксиса

enter image description here

var emailRegex = /[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?/; 

var validEmail = emailRegex.test(newEmail.email); 

Я делаю что-то не так? Есть ли другой способ отформатировать это регулярное выражение, чтобы это не происходило?

Мне не удалось найти ответ на этот вопрос.

ответ

3

Возможно, вы просто можете избежать / в регулярном выражении. В противном случае синтаксический маркер думает, что он закрывает литерал регулярного выражения.

//-----------------------vv 
var re = /[a-z0-9!#$%&'*+\/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?/; 

Или вы можете указать ошибку в любом редакторе, которым пользуетесь.


Обратите внимание, что синтаксический маркер на SO не имеет проблемы с оригиналом.

var re = /[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?/; 
+0

Сбежание спермы сработало, спасибо :) –

Смежные вопросы