gpt4 book ai didi

javascript - 为什么这不是有效的正则表达式?

转载 作者:行者123 更新时间:2023-11-28 16:11:21 24 4
gpt4 key购买 nike

我正在尝试使用 regex.exec() 从 URL 检索字符串的一部分,但由于某种原因出现错误。希望大家能够发现。

我试图从字符串中获取它 -> http://anotherdomain.com/image.jpg

var haystack = 'http://domain.com/?src=http://anotherdomain.com/image.jpg&h=300';
var needle = /(?<=src=).+(?=&h)/;
var results = needle.exec(haystack);

因此在加载时我收到此错误 -> SyntaxError:无效量词

所以我尝试在针周围添加单引号,但没有成功。添加引号使我 needle.exec 不是一个函数。

最佳答案

Javascript正则表达式不支持lookbehind。

您也许可以通过以下方式度过难关:

var haystack = 'http://domain.com/?src=http://anotherdomain.com/image.jpg&h=300';
var needle = /src=(.+)(?=&h)/;
var results = needle.exec(haystack);

// results is now ["src=http://anotherdomain.com/image.jpg", "http://anotherdomain.com/image.jpg"], so haystack[1] is what you want.

关于javascript - 为什么这不是有效的正则表达式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12851943/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com