我使用下面提到的模式来搜索并从大字符串中提取字符串。 示例输入字符串,如
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,MaxCallApprComboBxId,。
答案 0 :(得分:1)
替换此行:
while ( my $st = $str =~ /[0-9]+[\,][0-9]+[\,][0-9]+[\,][0-9a-zA-Z]+[\,]/g ) {
由:
while ( my ($st) = $str =~ /(\d+,\d+,\d+,[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";