我有一个正则表达式
- /abc(def)ghi(jkl)mno(pqr)/igs
如何将每个括号的结果捕获到3个不同的变量中,每个括号一个?现在我使用一个数组捕获所有的结果,它们顺序出来,但是我必须解析它们,并且列表可能是巨大的.
- @results = ($string =~ /abc(def)ghi(jkl)mno(pqr)/igs);
你的问题对我来说有点模糊,但我想你想做这样的事情:
- my (@first,@second,@third);
- while( my ($first,$second,$third) = $string =~ /abc(def)ghi(jkl)mno(pqr)/igs) {
- push @first,$first;
- push @second,$second;
- push @third,$third;
- }