我想用python从一个大的html文件中提取一个数字。 我的想法是使用这样的正则表达式:
import re
text = 'gfgfdAAA1234ZZZuijjk'
try:
found = re.search('AAA(.+?)ZZZ', text).group(1)
except AttributeError:
found = ''
found
但不幸的是我不习惯正则表达式而且我无法通过这个例子来提取0,54125
:
(...)<div class="vk_ans vk_bk">0,54125 count id</div>(...)
有没有其他方法可以提取数字,还是有人可以帮助我使用正则表达式?
答案 0 :(得分:0)
您可以在搜索之前替换文本中的某些字符。例如,要捕获12,34
之类的数字,您可以执行此操作:
text = 'gfgfdAAA12,34ZZZuijjk'
try:
text = text.replace(',', '')
found = re.search('AAA(\d+)ZZZ', text).group(1)
except AttributeError:
found = ''
print found
# 1234
如果你需要捕捉一行内的数字,你可以使你的模式更通用,如下所示:
text = '<div class="vk_ans vk_bk">0,54125 count id</div>'
text = text.replace(',', '')
found = re.search('(\d+)', text).group(1)
print found
# 054125
答案 1 :(得分:0)