python3用正则表达式解析字符串

str1 = 'service add name "testserver" protocol 100 protocol tcp sp 0:65535 dp 1000:6000 protocol udp sp 0:65535 dp 1000:6000 comment "test"'

想解析这种字符串,提取出name和dp后面的内容写到字典里,protocol 代表协议,分tcp、udp和自定义的(样例里有自定义的100,自定义的协议没有sp和dp),每条这样的字符串包含的proctocol数量不太一样,1个到8个之间随机的,而且tcp、udp和自定义的protocol的顺序也是随机的。自己尝试用正则表达式没弄出来。

想最后生成的结果是:

dict = {'testserver':[[100],[tcp,1000:6000],[udp,1000:6000]]}

1个回答

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐