regex 正则表达式-仅返回第一个源URL匹配项

vfh0ocws  于 2023-02-25  发布在  其他
关注(0)|答案(1)|浏览(182)

我试图从一页文本中提取第一个jpg。多个段落和多个网址在每个,但我只想要第一个网址/jpg,停止后,第一个是匹配/返回。

    • 样本页;**

这是一些文本和一个url src ="www.example.com"更多文本,更多文本,更多文本.更多文本,更多文本https://www.someurl.jpg" more text, more text, more text. more text, more text
更多文本,更多文本。这是一些文本和一个url src ="www.example.com"更多文本,更多文本,更多文本。更多文本,更多文本。https://www.anotherurl.jpg" more text, more text, more text. more text, more text.

    • 现行代码;**
(?<=src=")(.*?)(?=")

这段代码返回两个网址。我需要的输出只是它找到的第一个,并停止在那里,只是返回第一个。

    • 所需产出;**

https://www.someurl.jpg
任何帮助都感激不尽。

cmssoen2

cmssoen21#

你的正则表达式很好,只要加上周围环境和gflag. /(?〈=src=”)(.*?)(?=”)/g现在你给出了正确的正则表达式。

console.log(`I'm trying to extract the first jpg from a page of text. multiple paragraphs and multiple urls in each, but i only want the first url/jpg, stop after first is matched/returned.

sample page;

this is some text and a url src="https://www.so23123123123l.jpg" more text, more text, more text. more text, more text

more text, more text. this is some text and a url src="https://www.anotherurl.jpg" more text, more text, more text. more text, more text.`.match(/(?<=src=")(.*?)(?=")/ig));

您可以阅读here关于regexp标志的内容。

相关问题