Я пытаюсь получить подстроки из файла. Но я могу получить только одну подстроку, но не могу получить вторую.Regex для извлечения атрибутов
Вот пример строки:
<testPoolResult name="Pool" loop="1" currency="false" randomized="false" startTime="01.01.70_02:10:059""01.01.70_02:11:000" duration="0">
<testCase name="Test" status="SUCCESS" iteration="1" startTime="01.01.70_02:10:059" endTime="01.01.70_02:10:059" duration="0">
<testAction name="pend" status="SUCCESS" iteration="1" startTime="01.01.70_02:10:059" endTime="01.01.70_02:10:059" duration="0"/>
Мне нужно разобрать строку, которая оказывает testCase
и извлечь название теста и состояния теста.
вот мой код:
use warnings;
open(my $fh, "<", "test.txt") or die "can not open the file $! \n";
while (my $line = <$fh>) {
if ($line =~ /testCase\s+name[=""](.+?)\s+status[=""](.+?)/x) {
print $1. " " . $2 . "\n";
}
}
Может ли один помочь мне?
Если вы разбираете XML использовать парсер, такие как XML :: Twig https://metacpan.org/pod/XML::Twig – AKHolland
его немного сырой way'if ($ линия = ~ /testCase\s+name\=\"(.*?)\"\s+status\=\"(.*?)\"/i) { print $ 1, $ 2; } ' – run