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

正则表达式 – 即使可能进行多次匹配,Perl正则表达式也只返回列

发布时间:2020-12-14 06:04:08 所属栏目:百科 来源:网络整理
导读:我正在使用这种perl正则表达式: /(^.*)XXX/g 我希望这个正则表达式匹配该类型的文本 ******XXX****XXX***XXX 所以在这种情况下,正则表达式将匹配3次并提供以下结果: ******XXX****XXX*********XXX********** 但是,当我把这个正则表达式放在这样的列表上下
我正在使用这种perl正则表达式:

/(^.*)XXX/g

我希望这个正则表达式匹配该类型的文本

******XXX****XXX***XXX

所以在这种情况下,正则表达式将匹配3次并提供以下结果:

******XXX****XXX***
******XXX****
******

但是,当我把这个正则表达式放在这样的列表上下文中时

while($_=~/(^.*)XXX/g)

只有一场比赛,而且是

******XXX****XXX***

我哪里错了?

解决方法

你需要改变你的循环:

$_ = "******XXX****XXX***XXX";
while(/(.*)XXX/) {
    print $1,"n";
    $_=$1;
}

匹配的结果在$1中找到,而您匹配的变量是$_.

(编辑:李大同)

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

    推荐文章
      热点阅读