有人帮吗?当我运行这个时,我得到"无效的量词?<= href ="
var aHrefMatch = new RegExp("(?<=href\=")[^]+?(?=")");
var matchedLink = mystring.match(aHrefMatch);
Run Code Online (Sandbox Code Playgroud)
但我知道正则表达式是有效的.
有任何想法吗?
Javascript不支持lookbehind断言.它只支持前瞻性的.产生错误是因为它假设了?是0或1的量词,但是在子模式的开头没有要量化的元素(由该左(括号开始)
此外,您的字符串似乎缺少一些反斜杠,因为双引号不会在那里转义.它应该产生语法错误.
也许这段代码可以帮助你做你想要实现的目标:
var match = mystring.match(/href=\"([^\"]*)\"/);
var matchedLink = match[1];
Run Code Online (Sandbox Code Playgroud)