我有以下正则表达式:
/(?<={index:)\d+(?=})/g
我试图在这样的字符串中找到索引整数:
some text{index:1}{id:2}{value:3}
该表达式适用于 php,但不适用于 javascript,我收到以下错误:
Uncaught SyntaxError: Invalid regular expression: /(?<={index:)\d+(?=})/: Invalid group
我需要修复什么?
谢谢。
我有以下正则表达式:
/(?<={index:)\d+(?=})/g
我试图在这样的字符串中找到索引整数:
some text{index:1}{id:2}{value:3}
该表达式适用于 php,但不适用于 javascript,我收到以下错误:
Uncaught SyntaxError: Invalid regular expression: /(?<={index:)\d+(?=})/: Invalid group
我需要修复什么?
谢谢。
(?<= )
是积极的回顾。JavaScript 的 RegEx 风格不支持lookbehinds(但它支持lookaheads)。
JavaScript 不支持后视断言。请改用此模式:
/{index:(\d+)}/g
然后提取在组中捕获的值。
var str = "some text{index:1}{id:2}{value:3}";
var index = str.match(/{index:(\d+)}/);
index = index && index[1]*1;