Arrays 从字节数组中获取字节范围
我有一张便条:Arrays 从字节数组中获取字节范围,arrays,python-3.x,regex,Arrays,Python 3.x,Regex,我有一张便条: b_arr = b'\\xff\\x02\\x04\\x01\\x00\\x02' 我想得到最后3个字节,如下所示: out = 'b\\x01\\x00\\x02' 我试过: m = re.search("rb'\\x02\\x04'(.*)",b_arr) 但是得到一个TypeError:TypeError:不能在像字节这样的对象上使用字符串模式从技术上讲,这是一个字节对象,而不是字节数组对象,并且它有十六进制转义码。这将通过字符串切片检索最后三个十
b_arr = b'\\xff\\x02\\x04\\x01\\x00\\x02'
我想得到最后3个字节,如下所示:
out = 'b\\x01\\x00\\x02'
我试过:
m = re.search("rb'\\x02\\x04'(.*)",b_arr)
但是得到一个
TypeError:TypeError:不能在像字节这样的对象上使用字符串模式
从技术上讲,这是一个字节
对象,而不是字节数组
对象,并且它有十六进制转义码。这将通过字符串切片检索最后三个十六进制转义码:
>>> b_arr = b'\\xff\\x02\\x04\\x01\\x00\\x02'
>>> b_arr[-3*4:]
b'\\x01\\x00\\x02'
如果正确引用,正则表达式将正常工作:
>>> b_arr = b'\\xff\\x02\\x04\\x01\\x00\\x02'
>>> import re
>>> m = re.search(rb'\\x02\\x04(.*)',b_arr)
>>> m.group(1)
b'\\x01\\x00\\x02'