如何将“\x1b”转换成真正的控制字符“[Esc]”
How to convert "\x1b" into a real control character "[Esc]"
我得到一个用户写入的字符串作为命令行参数,但我确实得到了用户写入的内容,这导致字符串“1\x1b2”的长度为 6 个字符,而不是\x1b 被转换成我需要的控制字符。
我搜索了几个小时,但一无所获。我尝试的每个字符编码都失败了(这是合乎逻辑的,因为它不是控制字符)。
除了手动替换字符串“\x1b”(正则表达式)之外,还有其他方法吗?
它实际上是Python's codec library已知的编码:
s = r"1\x1b2"
dec = s.decode('string_escape')
print len(dec), repr(dec)
但这可能不是您编写转义符的确切上下文。
我得到一个用户写入的字符串作为命令行参数,但我确实得到了用户写入的内容,这导致字符串“1\x1b2”的长度为 6 个字符,而不是\x1b 被转换成我需要的控制字符。
我搜索了几个小时,但一无所获。我尝试的每个字符编码都失败了(这是合乎逻辑的,因为它不是控制字符)。
除了手动替换字符串“\x1b”(正则表达式)之外,还有其他方法吗?
它实际上是Python's codec library已知的编码:
s = r"1\x1b2"
dec = s.decode('string_escape')
print len(dec), repr(dec)
但这可能不是您编写转义符的确切上下文。