python - 如何从 python 中的 unicode 字符串中删除除数字和 ","之外的所有字符?

标签 python xpath unicode scrapy

我正在使用 scrapy 编写小型爬虫。 XPath 之一包含价格后跟“zł”(波兰货币标记)问题是它被换行符、空格和不间断空格混淆了。 所以当我这样做时:

sel.xpath("div/div/span/span/text()[normalize-space(.)]").extract()

我得到:

[u'\n            1\xa0740,00 z\u0142\n            \n            \n                ']

我想改成

[u'1740,00']

或者简单地转换为 float 变量。 执行此操作的/最好/最简单/最快的方法是什么?

最佳答案

您可以使用re.findall 从字符串中提取字符:

>>> import re
>>> s = u'\n            1\xa0740,00 z\u0142\n            \n            \n            '
>>> L = re.findall(r'[\d,]', s)
>>> "".join(L)
'1740,00'

关于python - 如何从 python 中的 unicode 字符串中删除除数字和 ","之外的所有字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34384480/

相关文章:

Python 数字递增矩阵

python - 如何在sklearn中获得基尼系数

php - xPath 只找到 *

javascript - 嵌套 <img> 标签时查找元素包含文本

java - XPath 不返回预期值

css - Font Awesome 的 unicode 在固定占位符中不起作用

visual-studio-2010 - 强制VS2010使用不带签名的UTF-8

c++ - C/C++ 从 wint_t 打印英镑符号

python - setUp 和 tearDown 方法是否为每个方法运行或在 TestCase 的开始和结束时运行

in和比较的python运算符优先级