gpt4 book ai didi

regex - 如何从同一个 Perl 正则表达式中捕获多个匹配项?

转载 作者:行者123 更新时间:2023-12-03 10:55:30 24 4
gpt4 key购买 nike

我正在尝试解析单个字符串并从具有相同正则表达式条件的同一字符串中获取多个数据块。我正在解析一个静态的 HTML 文档(出于未公开的原因,我无法使用 HTML 解析器来完成这项工作。)我有一个如下所示的表达式:

$string =~ /\<img\ssrc\="(.*)"/;

我想获得 1 美元的值(value)。但是,在一个字符串中,有很多这样的 img 标签,所以我需要返回一个类似数组的东西(@1?)这可能吗?

最佳答案

作为 Jim 的回答,使用/g 修饰符(在列表上下文或循环中)。

但要小心贪婪,你不想要.*匹配不必要的(并且不要转义 < = ,它们并不特殊)。

while($string =~ /<img\s+src="(.*?)"/g ) {
...
}

关于regex - 如何从同一个 Perl 正则表达式中捕获多个匹配项?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2884549/

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