我正在使用python漂白库来清理用户在网页上输入的数据。我正在做的是获取用户数据,使用漂白干净清理它并比较清理的数据是否与原始用户数据不同,如果是,则向用户发出警告以修复它。但是我面临一个问题,如果用户使用回车符输入文本区域中的一些数据bleach.clean删除原始文本中的\ r \ n,我的比较失败。
例如:
如果用户输入 abc(点击进入) DEF
当我们解析html文本框时,我们得到abc \ r \ ndef
并且在bleach.clean()之后我得到了abc \ ndef
我不介意用户输入回车,但出于某种原因,漂白剂正在清理它,我该如何预防呢?
答案 0 :(得分:3)
通过删除所有bleach
,您可以在将输入发送到carriage-returns
之前对其进行预先清理。那应该可以解决你的问题。以下是一些示例用例:
string.translate
示例:
from string import maketrans # Required to call maketrans function.
intab = "aeiou"
outtab = "12345"
trantab = maketrans(intab, outtab)
str = "this is string example....wow!!!"
print str.translate(trantab)
string.translate
输出
th3s 3s str3ng 2x1mpl2....w4w!!!
string.replace
示例:
str = "this is string example....wow!!! this is really string";
print str.replace("is", "was");
string.replace
输出
thwas was string example....wow!!! thwas was really string
修改:您还可以尝试在使用tags
bleach.clean
kwarg
您也可以在下面查看更多信息: