Недопустимый квантификатор Javascript RegEx

var search = new RegExp("<span class=\"highlight\">(?<text>.*)</span>", "g");

Что-то не так с RegEx? Firebug просто говорит "неверный квантификатор". Вот и все, больше никакой информации.


person Display Name    schedule 24.01.2012    source источник


Ответы (1)


Квантификатор вопросительного знака здесь неверен. Вы хотите сопоставить и собрать между скобками (). Выполнение (? неправильно, если вы хотите сопоставить (, вам следует выйти за скобки.

var search = new RegExp("<span class=\"highlight\">(<text>.*)</span>", "g");

person pdu    schedule 24.01.2012
comment
Я почти уверен, что (?<text>.*) должна была быть именованной группой, которая не поддерживается регулярными выражениями JavaScript. Эквивалентная группа без имени будет (.*). - person Alan Moore; 24.01.2012
comment
@ Алан Мур: Да, это было. Вместо этого я использовал группу без имени. - person Display Name; 25.01.2012