在括号或空格上解析表达式 - Python

时间:2017-01-12 03:02:49

标签: python regex

我有以下字符串:

'unix  2      [ ACC ]     STREAM     LISTENING     18135    /run/user/1000/systemd/private'

所以我试图使用Python的re模块解析它:

import re
text = 'unix  2      [ ACC ]     STREAM     LISTENING     18135    /run/user/1000/systemd/private'
>>> re.split(r'\s+[\[?\s+\]]', text)
['unix', '2', ' ACC', '', 'STREAM', 'LISTENING', '18135', '/run/user/1000/systemd/private']

虽然期望的表达式是:

['unix', '2', '[ ACC ]', 'STREAM', 'LISTENING', '18135', '/run/user/1000/systemd/private']

此外,文字可以带或不带[],例如:

tcp4       0      0  localhost.53019        localhost.53920        ESTABLISHED

我的正则表达式中缺少什么?

1 个答案:

答案 0 :(得分:0)

您在分隔符的表达式中包含括号( > dog = {speak: function() {console.log('ruff! ruff!')}}; > dog.speak(); // ruff! ruff! \[),因此它们不会出现在项目中。