Regex 在perl中提取匹配的模式(数字和名称)

Regex 在perl中提取匹配的模式(数字和名称),regex,perl,Regex,Perl,我使用下面提到的模式从大字符串中搜索和提取字符串。 类似字符串的输入示例 loadStringCombo('1',10,1,10,MaxCallApprComboBxId,quatstyle='width:50px;'quat) 预期产量 (10,1,10,MaxCallApprComboBxId,) 但通过这种方式,我只得到combobox1作为输出 while ( my $st = $str =~ /[0-9]+[\,][0-9]+[\,][0-9]+[\,][0-9a-zA-Z]+[

我使用下面提到的模式从大字符串中搜索和提取字符串。 类似字符串的输入示例

loadStringCombo('1',10,1,10,MaxCallApprComboBxId,quatstyle='width:50px;'quat)
预期产量

(10,1,10,MaxCallApprComboBxId,) 
但通过这种方式,我只得到combobox1作为输出

while ( my $st = $str =~ /[0-9]+[\,][0-9]+[\,][0-9]+[\,][0-9a-zA-Z]+[\,]/g ) {
    my $str3 = "combobox" . $st;
    push @arry1, $str3 . "\n";
    print @arry1, "\n";
    open FILE, ">test.txt" or die $!;
    print FILE @arry1, "\n";
}
请引导我提取值10,1,10,maxCallAppCombobxid,。

替换此行:

while ( my $st = $str =~ /[0-9]+[\,][0-9]+[\,][0-9]+[\,][0-9a-zA-Z]+[\,]/g ) {
作者:

整个循环:

while ($str =~ /(\d+,\d+,\d+,[0-9a-zA-Z]+,)/g ) {
    push @arry1, "combobox$1";
}
use Data::Dumper;
print Dumper\@arry1;
open my $FILE, '>', 'test.txt' or die $!;
print $FILE "@arry1";

摘录自-1,因为这是perl,我无法阅读。(jke:)请编辑您的问题以添加示例输入(宽度大于
10,1,10,maxCallAppComboBxid,
)谢谢!但这也给出了同样的结果checkbox1@RasikJesadiya:Soory,我打错了,请看我的编辑。@RasikJesadiya但您的inputHi M42中没有子字符串checkbox1,已编辑代码领先一步,但它进入无限循环,输出组合框10,1,10,MaxCallApprComboBxId,
while ($str =~ /(\d+,\d+,\d+,[0-9a-zA-Z]+,)/g ) {
    push @arry1, "combobox$1";
}
use Data::Dumper;
print Dumper\@arry1;
open my $FILE, '>', 'test.txt' or die $!;
print $FILE "@arry1";