我正在使用Python编写代码,其中包含特殊字符的Unicode文本,例如双引号和非英语字符。
我希望自动转义这些特殊字符,但是当我使用re.escape时,它也转义了所有的非英语字符。我不确定这是否应该发生。
无论如何,这是有问题的,因为当我的Python代码编写包含此Unicode文本的JavaScript代码时,JavaScript会打印出一个具有所有这些冗余斜杠的HTML元素。
我做错了什么?
这是生成的JS代码:
我希望自动转义这些特殊字符,但是当我使用re.escape时,它也转义了所有的非英语字符。我不确定这是否应该发生。
无论如何,这是有问题的,因为当我的Python代码编写包含此Unicode文本的JavaScript代码时,JavaScript会打印出一个具有所有这些冗余斜杠的HTML元素。
我做错了什么?
这是生成的JS代码:
var myString='\ע\נ\ב\ר'
应该是这样的
var myString='ענבר'
更新: 我使用了json.dumps(...),但它会在前后添加额外的引号。有人知道如何去掉它吗?
re.escape
就像其名称所述,用于对字符串进行转义,以便在正则表达式中作为字面值使用。这是完全不同的事情。 - user395760