以下是输入:
CHPID PATH=(CSS(0,1,2),11),SHARED, NOTPART=((CSS(0),(BP0101),(BP0102),(=)),(CSS(1),(BP0112),(=)),(CSS(2),(BP0121),(=))),SWITCH=11,SWPORT=((11,31))
我希望得到以下结果:
输出:
{'CSS(0)': ['(BP0101)', '(BP0102)'], 'CSS(1)': ['(BP0112)'], 'CSS(3)': ['(BP0121)']}
我的代码如下:
import re
content ='CHPID PATH=(CSS(0,1,2),11),SHARED, NOTPART=((CSS(0),(BP0101),(BP0102),(=)),(CSS(1),(BP0112),(=)),(CSS(3),(BP0121),(=))),SWITCH=11,SWPORT=((11,31))'
bb1 = "NOTPART" +".*"+ "\(=\)\)\)"
PART01 = re.compile(bb1)
matchb = PART01.search(content)
startxx = matchb.start() +9
endxx = matchb.end() -1
xxx = content[startxx:endxx]
bb00 = {}
bb01 = {}
larp00 = []
xxx1 = xxx.split(',')
for ii in range(len(xxx1)):
if xxx1[ii][1:4] == 'CSS' :
cs00 = xxx1[ii][1:]
elif xxx1[ii][1:2] != '=':
larp00.append(xxx1[ii])
else:
bb00 = {cs00:larp00}
bb01.update(bb00)
larp00=[]
print(bb01)
在python中是否有其他方法可以像使用正则表达式一样获得结果?如何解析数据
任何建议都将不胜感激
非常感谢
蔡简森
有两种输入: 输入1:
我想出去1:
亨利帮我重新编码
输入2:
我想离开2:
最后,我想比较OUT1和OUT2以更新input1,从而得到以下结果:
代码如下:
你能帮我简化这个代码吗?非常感谢
蔡志强
相关问题 更多 >
编程相关推荐