我有一个数组,其中包含某些元素在某些条件下相似的元素(如果我们从数组元素中检测到“ n和p ”,则可以识别相似的元素)。我想在使用 foreach 语句时立即使用这些类似的元素。该数组如下所示
my @array = qw(abc_n abc_p gg_n gg_p munday_n_xy munday_p_xy soc_n soc_p);
Run Code Online (Sandbox Code Playgroud)
数组元素的顺序不必总是这样。
我正在再次编辑这个问题。抱歉,如果我无法正确提出问题。我必须使用上面数组中存在的变量在文件中多次打印字符串。我只是想让你通过下面的代码理解这个问题,下面的代码在任何意义上都是不正确的......我只是用它来让你理解我的问题。
open (FILE, ">" , "test.v");
foreach my $xy (@array){
print FILE "DUF A1 (.pin1($1), .pin2($2));" ; // $1 And $2 is just used to explain that
} // i just want to print abc_n and abc_p in one iteration of foreach loop and followed by other pairs in successive loops respectively
close (FILE);
Run Code Online (Sandbox Code Playgroud)
我要打印的结果如下:
DUF A1 ( .pin1(abc_n), .pin2(abc_p)); …
Run Code Online (Sandbox Code Playgroud) 我想执行这段代码,但它不是waorking,tcl脚本如下:
set i 0
foreach pattern { tiger cat horse dog} {
set pat$i abc
puts "pat$i=${pat$i}"
set i [expr {$i + 1}]
}
Run Code Online (Sandbox Code Playgroud)
我在每个循环中想要的期望结果是:
pat0=abc
pat1=abc
pat2=abc
pat3=abc
Run Code Online (Sandbox Code Playgroud)
请帮助我找出我的错误