我需要采用以下字符串并将其分成大块:
[ToNode = cup-subscriber] [原因=关键服务是
下来] [FromNode = cup-publisher] [AppID = Cisco UP Server Recovery Manager]
每个块都封装在方括号中。我正在Perl中寻求实现,并且正在寻找方法的方向。
谢谢!
最佳答案
您可以使用lookahead和lookbehind断言在]
和[
之间进行分割:
$str = '[ToNode=cup-subscriber][Reason=Critical service is down]
[FromNode=cup-publisher][AppID=Cisco UP Server Recovery Manager]';
@pieces = split/(?<=\])(?=\[)/,$str;
See it