我需要使用以下字符串并将其分成块:
[ToNode = cup-subscriber] [原因=关键服务已关闭] [FromNode = cup-publisher] [AppID = Cisco UP Server Recovery Manager]
每个块都封装在括号中.我希望在Perl中这样做,并且正在寻找方法的方向.
谢谢!
将/ g修饰符用于正则表达式.在列表上下文中提取到数组中:
$data = "[ToNode=cup-subscriber][Reason=Critical service is down][FromNode=cup-publisher][AppID=Cisco UP Server Recovery Manager]"
my @chunk = ( $data =~ /\[(.*?)\]/g );
Run Code Online (Sandbox Code Playgroud)
或者在while循环中迭代块:
$data = "[ToNode=cup-subscriber][Reason=Critical service is down][FromNode=cup-publisher][AppID=Cisco UP Server Recovery Manager]"
while ( $data =~ /\[(.*?)\]/g ) {
process($1);
}
Run Code Online (Sandbox Code Playgroud)