我有一个带有字符串的数组(@myarray),如下所示:
rs30000489
rs903484
rs24567;rs324987;rs234985
rs5905002
rs32456;rs2349085
当我使用以下代码匹配另一个没有带分号和多个 rsID 字符串的类似 (@otherarray) 数组时:
for $1(0 .. $#otherarray) {
for $m(1 .. $#myarray) {
if ($myarray[$m] =~ /$otherarray[$i]/i) {
$IDmatch = 1;
}
}
}
该脚本不匹配带有分号的字符串中的任何 ID。我尝试像这样拆分分号字符串:
foreach $string (@myarray) {
if ($string =~ m/;/) {
push (@newarray, $string);
}
}
返回数组@new:
rs24567;rs324987;rs234985
rs32456;rs2349085
然后我尝试用一个常见的字符来分割它:
foreach $line (@new) {
$line =~ tr/;//d;
$line =~ s/rs/ rs/g;
$line = split (/ /);
}
但是当我打印 @new 数组时,它只返回零。我知道这一定与我的循环有关,因为我在使用 perl 中的循环时遇到了麻烦。如果您有任何想法,请告诉我!谢谢!