2013-11-08 2 views

ответ

10

Вы не можете вставлять комментарий в литерал регулярного выражения.

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

var r = new RegExp(
    "\\b" + // word boundary 
    "A=" + // A= 
    "(\\d+)"+ // what is captured : some digits 
    "\\b"  // word boundary again 
, 'i');  // case insensitive 

Но регулярное выражение буквальным так гораздо удобнее (обратите внимание, как я должен был бежать \) я скорее отделите регулярное выражение от комментариев: просто поставьте некоторые комментарии перед своим регулярным выражением, а не внутри.

+0

Что касается документации по коду, это плохая новость. Я бы, вероятно, «разворачивал» литерал regexp в многострочном комментарии и объяснял его фрагменты. Однако не следует забывать обновлять комментарий с помощью выражения. То, что также говорит для литералов, заключается в том, что они создаются быстрее, чем через конструктор RegExp(): http://jsperf.com/creating-regular-expressions/4 – CoDEmanX

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