我有以下字典,其中包含一些产品数据:
dictionary = {'price': [u'3\xa0590 EUR'],
'name': [u'Product name with unicode chars]}
所有值均为unicode。正如您所看到的,我使用列表作为字典值,因为有时我需要连接来自几个不同来源的信息。
我正在寻找一种方法,通过使用正则表达式从价格值中提取数字而不使用非中断空格(\ xa0)和末尾货币(EUR)。
在这种情况下,我希望看到以下结果:
3590
你能建议一个解决方案吗?
[解决方案]
在此处添加解决方案,因为comments字段意外地包含了我的代码:
我使用了Python的re
模块中的.sub()方法,这是一个替换函数。这是给我预期结果的最终代码:
p = re.compile( '(\xa0| EUR|)')
result = p.sub( '', dictionary['price'][0])
答案 0 :(得分:2)
不确定python,但这是一个正则表达式:
p = /\D/g;
s.replace(p, '');