加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

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

发布时间:2020-12-15 21:20:54 所属栏目:大数据 来源:网络整理
导读:我试图解析一个单一的字符串,并从相同的正则表达式条件的同一个字符串中获取多个数据块。我正在解析一个静态的HTML文档(由于未公开的原因,我无法使用HTML解析器来完成此工作)。我有一个表达式,如下所示: $string =~ /imgssrc="(.*)"/; 我想要获得$ 1
我试图解析一个单一的字符串,并从相同的正则表达式条件的同一个字符串中获取多个数据块。我正在解析一个静态的HTML文档(由于未公开的原因,我无法使用HTML解析器来完成此工作)。我有一个表达式,如下所示:
$string =~ /&;imgssrc="(.*)"/;

我想要获得$ 1的价值。然而,在一个字符串中,有很多这样的img标签,所以我需要像数组返回的东西(@ 1?)这是可能的吗?

解决方法

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

但要注意贪婪,你不想要。*匹配超过必要的(不要逃避< =,它们不是特别的)。

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

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读