2024-09-27 07:32:38 发布
网友
如何在python中编写正则表达式以获取浮点数。我要55.97英镑。来自<td nowrap="nowrap">55.97</td>。所以我给了
<td nowrap="nowrap">55.97</td>
newsecond_row_data = (re.search('(?<=>)\d+|\d+.\d+',second_row_data[a])) newsecond_row_data.group(0) print newsecond_row_data.group(0)
但结果是55而不是55.97。请告诉我
谢谢你
newsecond_row_data = re.search('\d+\.?\d*', second_row_data[a]) print newsecond_row_data.group(0)
如果您想从HTML或XML中提取数据,请查看可用的各种解析器。对于这种特殊情况,您可以很容易地提取数字:
>>> from xml.etree import ElementTree >>> element = ElementTree.fromstring('<td nowrap="nowrap">55.97</td>') >>> element.text '55.97' >>>
newsecond_row_data = (re.search('(?<=>)\d+.\d+|\d+',second_row_data[a])) newsecond_row_data.group(0)
你的模式不工作的原因是它看到“55”,找到匹配项并停止进一步搜索。在
再次,我建议不要使用regex,而是使用XML处理库从HTML标记中提取文本(见Sudhir的答案)。在
如果您想从HTML或XML中提取数据,请查看可用的各种解析器。对于这种特殊情况,您可以很容易地提取数字:
你的模式不工作的原因是它看到“55”,找到匹配项并停止进一步搜索。在
再次,我建议不要使用regex,而是使用XML处理库从HTML标记中提取文本(见Sudhir的答案)。在
相关问题 更多 >
编程相关推荐