我有一个存储在数据库中的HTML字符串。不幸的是,它包含诸如®的字符,我想在数据库本身中或在我的Python / Django代码中使用“查找替换”将它们替换为HTML等效字符。
关于如何执行此操作的任何建议?
你可以使用ASCII字符为前128个字符,因此获取每个字符的编号,ord
如果超出范围则将其删除
# -*- coding: utf-8 -*-
def strip_non_ascii(string):
''' Returns the string without non ASCII characters'''
stripped = (c for c in string if 0 < ord(c) < 127)
return ''.join(stripped)
test = u'éáé123456tgreáé@€'
print test
print strip_non_ascii(test)
结果
éáé123456tgreáé@€
123456tgre@
请注意,@其中包括了它,因为毕竟它是一个ASCII字符。如果要剥离特定的子集(如数字,大小写字母),则可以限制范围以查看ASCII表
编辑:再次阅读问题后,也许你需要转义HTML代码,因此一旦渲染,所有这些字符都会正确显示。你可以escape
在模板上使用过滤器。
问题内容: 从网站提取数据时出现奇怪的字符: 如何删除不是非扩展ASCII字符的内容? 问题答案: 正则表达式替换将是最佳选择。使用作为一个例子的字符串,并使用匹配它,这是一个POSIX字符类: 什么是寻找所有可打印字符。相反,查找所有不可打印的字符。不属于当前字符集的所有字符都将被删除。 注意: 使用此方法之前,必须确保当前字符集为ASCII。POSIX字符类同时支持ASCII和Unicode,
问题内容: 我有一个包含非ASCII字符的URI,例如: http://www.abc.de/qq/qq.ww?MIval=typo3_bsl_int_Smtliste&p_smtbez=Schmalbl -ttrigeSomerzischeruchtanb 如何从此URI中删除“ …” 问题答案: 我猜想URL的来源更多是错误的。也许您正在解决错误的问题?从URI中删除“奇怪”字符可能会赋予它完
问题内容: 我得到的用户输入包括非ASCII字符和不可打印的字符,例如 例如: 所需的输出: 使用Java删除它们的最佳方法是什么? 我尝试了以下操作,但似乎不起作用 输出量 问题答案: 您的要求不清楚。Java 中的所有字符都是Unicode字符,因此,如果将其删除,将留下一个空字符串。我假设您的意思是您要删除任何非ASCII,不可打印的字符。 此处, 代表可打印ASCII字符的POSIX字符类
问题内容: 我已经尝试解决这个问题一段时间了,我试图从DB_user列中删除非ASCII字符并尝试将它们替换为空格。但是我不断出错。这是我的数据框的外观: 我正在使用此功能,这是我在研究SO问题时遇到的。 我不断收到错误: 但是,我认为通过使用filter_func函数中的循环,可以通过在’ord’中输入一个char来解决这个问题。因此,当它遇到非ASCII字符时,应将其替换为空格。 有人可以帮我
问题内容: 我得到的任务是从文本文件或字符串中删除所有非数字字符,包括空格,然后在旧字符旁边打印新结果,例如: 之前: 后: 由于我是初学者,所以我不知道从哪里开始。请帮忙 问题答案: 最简单的方法是使用正则表达式
问题内容: 我正在编写python MapReduce字数统计程序。问题是数据中散布着许多非字母字符,我发现这篇文章从Python的字符串中剥离了除了字母数字字符之外的所有内容,这显示了使用正则表达式的一个很好的解决方案,但是我不确定如何实现它 恐怕我不确定该如何使用该库甚至正则表达式。我不确定如何将正则表达式模式正确地应用于传入的字符串(书的一行)以检索没有任何非字母数字字符的新行。 有什么建议