Pull to refresh

Lookbehind assertions в регулярных выражениях V8

Reading time1 min
Views6.9K
Кажется, прошла незамеченной хорошая новость.

Разработчики V8 активно взялись за добавление lookbehind assertions в регулярные выражения JavaScript.

В Google Chrome Canary уже можно потестировать при помощи флага:

chrome.exe --js-flags="--harmony-regexp-lookbehind"

В этом месяце выходит шестая версия Node.js, основанная на V8 5.0, и в ней тоже можно включить поддержку lookbehind:

node --harmony_regexp_lookbehind

Если совсем не терпится, можно потестировать на уже появляющихся RC:

nodejs.org/download/rc

Я так протестировал положительный и отрицательный варианты на примере из статьи:



Стоит обратить внимание на две особенности, упомянутые авторами:

1. В отличие от Perl, оба варианта lookbehind поддерживают выражения переменной длины.

2. Разработчики пошли по пути .NET и в другой особенности — установлен непривычный (для начала) порядок запоминания подвыражений и внутренних ссылок.

P.S. Нововведение перешло на стадию флага --es_staging.
Tags:
Hubs:
Total votes 9: ↑7 and ↓2+5
Comments21

Articles