我有以下代码
inf = codecs.open(inPath , encoding='utf-8')
outf = codecs.open(outPath, encoding='utf-8', mode='w')
old = u'’;'
new = u'’;'
for line in inf:
line = line.replace(old,new)
asc = line.encode('ascii', 'xmlcharrefreplace')
outf.write(asc)
# print asc
inf.close()
outf.close()
这(正确)使用数字格式将智能引号和带重音符号等转换为它们的html实体格式。它将转换
<p>Dreams like: “Someday I’ll travel to…; someday I’ll write a book;
进入
<p>Dreams like: “Someday I’ll travel to…; someday I’ll write a book;
这都是正确的。
但是,…;在更下游的代码中,看到了中间的代码,删除了双分号,然后抱怨它没有有效的实体。我无法更改此代码。
如您从我的代码中看到的那样,我发现了一种情况,其中一个实体后跟一个分号。我不想替换源代码中的所有分号。
如何检测代码点> 127的UTF-8字符后的半冒号,以便将其替换为;?谢谢。
慕标琳琳
相关分类