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]
取代它在未来iterartion找到14元即div[2]
&替换为div[3]
&等)。如何用另一个div []元素替换一个div []元素?
通过使用PATTERN匹配,它不能。有没有什么方法通过使用正则表达式来找到替代它的特定元素&?我该怎么做 ?如在上面提到的问题,因为V1 V2 &
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";
两个变量(编辑为$ a和$ b)中,修改已申请它们两者。我想我已经接近你所说的了。可以同时请帮我进一步
@ Cupidvogel:什么是在if语句的意思是$ 1吗? –
哦,你需要详细研究Perl的正则表达式。 ** 1美元**是成功比赛时用括号括起来的第一组。因此,如果元素是** div [5] **,那么$ 1将是5. – SexyBeast
请将代码格式化为正确的答案,您编写的代码几乎不可读。 – SexyBeast