Tôi muốn khớp hai chuỗi và đầu ra khác nhau phải có $ 1 và $ 2, Theo tôi trong ví dụ này, nếu $ a là 'xy abc', thì $ 1 phải là 'xy abc' và $ 2 nên 'abc', nhưng phần 'abc' sẽ có giá $ 3. Bạn có thể vui lòng giúp tôi viết một regex trong đó $ 1 nên có toàn bộ chuỗi và $ 2 nên có phần thứ hai. Tôi đang sử dụng perl 5.8.5.Kết hợp regex perl không thành công
my @data=('abc xy','xy abc');
foreach my $a (@data) {
print "\nPattern= $a\n";
if($a=~/(abc (xy)|xy (abc))/) {
print "\nMatch: \$1>$1< \$2>$2< \$3>$3<\n";
}
}
Output:
perl test_reg.pl
Pattern= abc xy
Match: $1>abc xy< $2>xy< $3><
Pattern= xy abc
Match: $1>xy abc< $2>< $3>abc<
Đó là tám tuổi. Bạn thực sự nên xem xét nâng cấp. –