Javascript / RegExp: Lookbehind Assertion вызывает ошибку «Invalid group ”Error

Я ' m выполняет простое утверждение Lookbehind, чтобы получить сегмент URL-адреса (пример ниже), но вместо получения совпадения я получаю следующую ошибку:

Uncaught SyntaxError: Invalid regular expression: /(?<=\#\!\/)([^\/]+)/: Invalid group

Вот сценарий, который я выполняю:

var url = window.location.toString();

url == http://my.domain.com/index.php/#!/write-stuff/something-else

// lookbehind to only match the segment after the hash-bang.

var regex = /(?<=\#\!\/)([^\/]+)/i; 
console.log('test this url: ', url, 'we found this match: ', url.match( regex ) );

результат должен быть write-stuff .

Кто-нибудь может пролить свет на почему эта группа регулярных выражений вызывает эту ошибку? Мне кажется, что это действительный RegEx.

Я знаю альтернативы о том, как получить нужный мне сегмент, так что на самом деле это просто помочь мне понять, что здесь происходит, а не получить альтернативное решение.

Спасибо за чтение. .

J.

7
задан Jannis 12 May 2011 в 05:44
поделиться