for ($i=0; $i<10; $i++)
{
my $v1 = $sel->get_text("//body[\@id='ext-gen3']/div[10]/div[2]/div/div/div/div/div/div/div/div/div/div[2]/div/**div**/table/tbody/tr/td/div/div");
my $v2 = $sel->get_text("//body[@\id='ext-gen3']/div[10]/div[2]/div/div/div/div/div/div/div/div/div/div[2]/div/**div**/table/tbody/tr/td[2]/div/div")
print ($v1 . $v2);
}
对于每次迭代,它必须找到从第 14 个元素开始div[10]
并用增加的div[ ]
元素替换它(例如:如果第 14 个元素是div
,则将其替换为div[2]
。在下一次迭代中找到第 14 个元素,即div[2]
& 将其替换为div[3]
& 依此类推)。
通过使用 PATTERN 匹配,它不能。有没有使用正则表达式查找特定元素并替换它的方法?我该怎么做 ?
my $a = "//body[\@id='ext-gen3']/div[10]/div[2]/div/div/div/div/div/div/div/div/div/div[2]/div/**div**/table/tbody/tr/td/div/div";
my @arr = split ('/' , $a);
print "@arr \n";
my $size1 = @arr;
print "$size1\n";
print $arr[16];
foreach my $a2 (@arr)
{
print "$a2 \n";
}
my $b = "//body[\@id='ext-gen3']/div[10]/div[2]/div/div/div/div/div/div/div/div/div/div[2]/div/**div**/table/tbody/tr/td[2]/div/div";
上述问题中提到的两个变量为 v1 和 v2(编辑为 $a 和 $b),修改必须同时适用于它们。我想我几乎接近你所说的。你能帮我进一步吗