0
我们试图通过Django使用BeautifulSoup来进行一些文本提取。我们有一个奇怪的错误,我们已经追溯到以下,我们不明白。Django涉及unicode的正则表达式混淆
如果我们发出一个标准的Python提示符下输入:
import re
print re.match("&#([0-9]+)[^0-9]","»")
我们得到的None
的输出,应该可以预期的。但是,当我们把这段代码放在sgmllib.py中(Django最终通过我们的网站通过一串长长的调用呼叫),Python 确实与成功匹配,并返回一个对象。它出现在我们身上,好像Django在某种程度上忽略了上面字符串中的x
。我认为这必须与unicode设置相关,等等,但我们似乎无法弄清楚为什么Django的运行方式不同,而不是我们在香草Python 2.6会话中自己运行此代码的原因。
为什么上面的正则表达式在正常运行时不匹配,但确实与匹配,当Django尝试它时?
你的数据看起来像......? –
尝试在这里添加您的原始代码,而不是一个例子......也许错误是在另一行代码中,我们错过了它......例如,如果您可以告诉我们这个“» “价值来自.... – marianobianchi