regexp中的Python和二进制数据

时间:2012-03-05 11:52:46

标签: python

我正在寻找一种在python中将不可打印字符放入字符串的方法。

小背景信息:我使用paramiko通过SSH使用Windows命令提示符。然而,paramiko没有'解析'/'使用'ANSI终端仿真转义序列。所以他们出现在我的输出中,这是我不想要的。所以我需要剥离这些转义序列。

然而,这些字符串/转义序列按以下方式编码:Esc[Line;ColumnH

你可以猜到。我无法在字符串中获取esc-byte值。它会打印为0x1b27之类的内容。因此毫无用处。

有谁知道如何解决这个问题?提前谢谢。

1 个答案:

答案 0 :(得分:1)

您可以使用正则表达式来抑制这些转义序列:

str_with_ainsi_esc = '\x1b[10;10HSalut'
print re.sub('\x1b\[\d+;\d+H','',str_with_ainsi_esc)