遇到一个解析任务,需要解析里面的字符串,字符串中含有中括号,琢磨了一段时间,分享如下:
首先是从简单的开始
如:
匹配
abc[123]abc
使用的表达式为
(.*)\[([^\[\]]*)\](.*)
其中的中括号需要进行转义,解析我这边的实际数据:
-1[K10P10-232-W-4G;8904A856D6F700000000;TW9318000200020;2019-01-02 14:59:25;V1.0]
对应的正则为:
((\D?\d)\[((.+?);(.+?);(.+?);(.+?);(.+?))\])
可以直接取到每个分号段的内容,亲测有效