2015-03-18 2 views
1

Я использую следующий код JavaScript, чтобы создать регулярное выражение для номера мобильного телефона в Великобритании:JavaScript Регулярное выражение ничего не повторять

new RegExp("(\+44|0)7\d{9}", 'g'); 

Однако я получаю сообщение об ошибке в журнале консоли говоря:

Uncaught SyntaxError: Invalid regular expression: /(?:+44|0)7d{9}/: Nothing to repeat

Аналогичные вопросы о StackOverflow указывают на отсутствующий экранированный символ, но мне кажется, что все в порядке.

Я также пробовал без знака global.

Справка была бы принята с благодарностью.

+0

'новый RegExp ("(? \\ + 44 | 0) 7 \\ d {9}" , 'g'); ' –

+0

@ AvinashRaj, это сработало! Можете ли вы объяснить, почему это так? –

+2

в двойных кавычках, сбрасывать все обратные косые черты еще раз или иначе он будет рассматривать обратную косую черту как escape-последовательность. –

ответ

0

Вы можете создать RegExp, используя короткий метод

var a = /(\+44|0)7\d{9}/g 

Его необходимо хорошо работает)

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