gpt4 book ai didi

regex - Perl 正则表达式在列表上下文中只返回一个值,即使可能有多个匹配

转载 作者:行者123 更新时间:2023-12-04 22:48:23 26 4
gpt4 key购买 nike

我正在使用这种 Perl 正则表达式:

/(^.*)XXX/g
我希望这个正则表达式匹配类型的文本
******XXX****XXX***XXX
这样在这种情况下,正则表达式将匹配三次并提供以下结果:
******XXX****XXX***
******XXX****
******
但是,当我将这个正则表达式放在这样的列表上下文中时
while($_=~/(^.*)XXX/g)
只有一场比赛,它是
******XXX****XXX***
我哪里错了?

最佳答案

你需要改变你的循环:

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

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

关于regex - Perl 正则表达式在列表上下文中只返回一个值,即使可能有多个匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14600301/

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