如何从 Python 中的字符串中移除 ANSI 转义序列?


在 Python 中,可以使用正则表达式来移除字符串中的 ANSI 转义序列。只需使用 re.sub() 用空字符串替换转义序列。用于移除 ANSI 转义序列的正则表达式为:'(\x9B|\x1B\[)[0-?]*[ -\/]*[@-~]'。

例如,

import re
def escape_ansi(line):
    ansi_escape =re.compile(r'(\x9B|\x1B\[)[0-?]*[ -\/]*[@-~]')
    return ansi_escape.sub('', line)
print escape_ansi(line = '\t\u001b[0;35mSomeText\u001b[0m\u001b[0;36m172.18.0.2\u001b[0m')
                                 

这将输出

 '\tSomeText                                  172.18.0.2'

更新于: 30-Sep-2019

8 千+浏览量

开启你的 职业生涯

完成课程并获得认证

开始
广告