1
[1mResolving domain yahoo.com ,[0m ,98.138.253.109  yahoo.com

我想删除"[1m"and "[0m"。我尝试使用编码encode('utf-8')无效。

请帮忙。

4

3 回答 3

5
a="[1mResolving domain yahoo.com ,[0m ,98.138.253.109  yahoo.com"
c=["[1m","[0m"]
for i in c:
  a=a.replace(i,"")
print a

如果要删除更多,可以将其添加到列表 c

于 2014-04-29T07:39:17.773 回答
4

显然,您从兼容 VT100 的终端接收到一个颜色编码的字符串。字符串中应该有 #27 (0x1b, ESC) 符号,如果有,请使用正则表达式从字符串中消除以 ESC 符号开头的颜色代码。您可以在此 Wikipedia 文章中查看可能的颜色代码列表。

抱歉,我不是编写正则表达式或 Python 代码的专家,因此请使用其他答案作为代码。

于 2014-04-29T07:21:49.457 回答
1

问题中的信息太少,但我认为应该这样做:

import re
s = '[1mResolving domain yahoo.com ,[0m ,98.138.253.109    yahoo.com'
t = re.sub('\[\dm', '', s)
于 2014-04-29T07:16:06.590 回答