我想获得随附的内容。拆分只允许我按一个分隔符拆分。
输入:
\x02\xxx\xxx\xxx\xxx\x03\x02\xxx\xxx\xxx\xxx\x03\x02\xxx\xxx\xxx\xxx\x03
想要的输出:
['\xxx\xxx\xxx\xxx\','\xxx\xxx\xxx\xxx\','\xxx\xxx\xxx\xxx\']
请帮忙。谢谢。
我怀疑您需要详细说明输入的可能变化,但此代码适用于您提到的特定情况:
line = '\x02\xxx\xxx\xxx\x03\x02\xxx\xxx\xxx\x03\x02\xxx\xxx\xxx\x03'
if line.startswith('\x02'):
line = line[4:]
if line.endswith('\x03'):
line = line[:-4]
chunks = line.split('\x03\x02')
print chunks
>>> ('\xxx\xxx\xxx', '\xxx\xxx\xxx', '\xxx\xxx\xxx')
如果每一行都以 '\x02' 开头并以 '\x03' 结尾,则这种更简单的方法将起作用:
line = line[4:-4]
chunks = line.split('\x03\x02')
如果分隔符有很多变化,我喜欢 root 的建议来查看 re.split() 方法:http ://docs.python.org/2/library/re.html#re.split 。
您可以re.split()
从允许您拆分模式的re 模块中使用。类似的东西filter(None,re.split(r'\\x0\d',s))
应该可以工作。