您的位置:首页 > 编程语言 > Python开发

Python用re(正则表达式)模块过滤Telnet字体颜色

2008-02-29 19:29 1061 查看
原由

Telnet协议支持用转义字符增强客户显示等特殊效果,但对于使用Telnet协议的客户端程序读取数据、分析数据时有比较大的干扰,怎么样把其过滤呢?

实现

telnet方式有以ESC开头的ANSI转义字符,可以方便的控制字符颜色、背景等属性。常见的颜色转义字符:

颜色 对应的telnet ansi字符
红 ESC[31m
绿 ESC[32m
黄 ESC[33m
蓝 ESC[34m
紫红 ESC[35m
蓝绿 ESC[36m
黑(白) ESC[37m
复位 ESC[m

发现主要是ESC(/x16)后面加代码,以m结尾,有了这个模式就可以用re正则表达式方便的过滤。

源代码


def __ZYResult(self, instrs):


re.compile('(/x1b/[[0-9]*m)')


return p.sub('', instrs)



经测试完全满足要求,o(∩_∩)o...
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: