Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

ฉันจะลบลำดับหลีก ANSI ออกจากสตริงใน python ได้อย่างไร


คุณสามารถใช้ regexes เพื่อลบลำดับหลีก ANSI ออกจากสตริงใน Python เพียงแทนที่ Escape Sequence ด้วยสตริงว่างโดยใช้ re.sub() regex ที่คุณสามารถใช้เพื่อลบลำดับหลีก 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'