我的文本文件包含来自bash输出的数据,因此它包含格式化数据,更具体地说,包含如下颜色代码:
[0;31m16521[0;0m [0;32mDesktop/business-models-for-data-economy.pdf[0;0m
我想删除格式化,即以纯文本形式获取:
16521 Desktop/business-models-for-data-economy.pdf
虽然我理解它有点像从[
开始删除包含;
并以m
结尾的块,但我想知道是否有更清晰,更正确的方式这样做。
答案 0 :(得分:2)
你可以用正则表达式来做到这一点:
import re
s = '[0;31m16521[0;0m [0;32mDesktop/business-models-for-data-economy.pdf[0;0m'
new_s = re.sub(r'\[.*?;.*?m', '', s)
>>> print new_s
16521 Desktop/business-models-for-data-economy.pdf