使用regex从unicode字符串中提取数字

时间:2014-01-01 22:16:47

标签: python regex unicode-string

我有以下字典,其中包含一些产品数据:

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])

1 个答案:

答案 0 :(得分:2)

不确定python,但这是一个正则表达式:

p = /\D/g;
s.replace(p, '');