Когда вы используете \
в строке, это сигнализирует о последовательности escape-символов. Сама строка не отображается как \x01...
, но вместо этого каждый из этих кусков преобразуется в одиночный символ .
То есть, ваше регулярное выражение пытается сопоставить значение необработанной строки, а не фактическое значение строки, сохраненное в d
.
Я не уверен, как улучшить ваше регулярное выражение, так как мне не ясно, что вы ожидаете, что оно будет соответствовать. В настоящее время кажется, что вы пытаетесь проверить, что байтовый массив был создан с использованием определенного метода, а не путем установки байтов в целые числа. Если вы сможете лучше сформулировать цель своего регулярного выражения, я смогу оказать вам дальнейшую помощь.