У меня проблема с регулярным выражением. я
пытаясь извлечь несколько условий внутри while
и if
. Я использую Perl 5.8.6 в Windows XP.
@conditions
- это массив, который точно содержит содержимое цикла while, например ::
while
(
(condition A) &&
(condition B)
)
Можно предположить, что массив @conditions
содержит вышеуказанные данные:
my perl code sampled:
my $count = 0;
foreach my $condition (@conditions) {
$count++;
my ($open,$close) = $condition =~ /( (?: [(] | \s )* ) (.*) /msx;
print "$open $count $close";
}
и мой код C:
while
(
(
1 condition A &&
2 condition B
)&&
(
3 condition C
4 condition D
)
)
Я сталкиваюсь с проблемой, когда у меня есть цикл while, подобный этому:
while
(
(condition A) &&
(condition B)
)
Мой желаемый результат должен быть:
while
(
1 (condition A) &&
2 (condition B)
)
но он печатает имеет ...
while
(
( 1 condition A) &&
( 2 condition B)
)
Может кто-нибудь помочь мне с регулярным выражением, чтобы получить желаемый результат?