- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试通过 saxutils.escape 方法转义分号。
saxutils.escape('<;', {';': ';'})
我希望它产生
'<;'
但是它给了
'<;;'
这是设计使然吗?我怎样才能得到预期的结果?
最佳答案
你的问题是saxutils.escape
分两步工作。首先,它解析 <
, >
, 和 &
, 然后它使用 entities
解析该解析的结果。
所以一次<
已被 <
取代, 你有 <;
, 所以你最终得到 <;;
.
基本上,它的所作所为是有道理的。如果你需要转义分号,那不是因为 HTML 的原因,所以必须要对它们进行双重转义。在这种情况下,转义由 HTML 要求的转义创建的分号是有意义的。
使用 saxutils.escape
无法获得您想要的结果.您需要使用另一种转义方法。查看Python Wiki page on escaping HTML一些想法。
您也可以使用类似我对 What is the best way to do a find and replace of multiple queries on multiple files? 的回答中的内容用其他模式同时替换分号,这样您就不会重复替换任何内容。
关于python - saxutils.escape() 两次转义分号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7063026/
我正在尝试通过 saxutils.escape 方法转义分号。 saxutils.escape(' , 和 & , 然后它使用 entities解析该解析的结果。 所以一次<已被 < 取代, 你
我使用 XMLGenerator 来编写内容,但似乎不知道如何使用命名空间。我不断收到 KeyErrors。 作为一个简单的例子,我想写 我应该如何调用startElementNS? xml
我是一名优秀的程序员,十分优秀!