我正在编写一个小工具,从字符串(通常是推文)中提取一堆值。
该字符串可能由单词和数字组成,以货币符号(£、$、€等)为前缀的金额以及一些哈希标签(#foo #bar)。我在appEngine上运行,并使用tweepy来获取推文。
我目前用于查找这些值的代码如下:
tagex = re.compile(r'#.*')
curex = re.compile(ur'[£].*')
for x in api.user_timeline(since_id = t.lastimport):
tags = re.findall(tagex, x.text)
amount = re.findall(curex, x.text)[0]
logging.info("Text: " + x.text)
logging.info("Tags: " + str(tags))
logging.info("Amount: " + amount)
假设x.text是"Taxi London £6.50 #projectfoo #clientmeeting"。
tagex可以找到hashtag,但是我无法使用curex提取金额,目前的结果如下:Amount: £6.50 #projectfoo #clientmeeting。
我还需要将货币符号分离出来,以便将金额作为浮点数获取,但稍后应该很容易实现。
u
前缀,否则会出现语法错误。 - user377628