gpt4 book ai didi

python - 正则表达式总是给出 None

转载 作者:行者123 更新时间:2023-12-01 05:12:27 25 4
gpt4 key购买 nike

这是我的代码

>>> ll = 'window.DETAILS_PAGE_MAP_GLOBALS = {GOOGLE_MAPS_LONGITUDE: 55.2378015294,GOOGLE_MAPS_LATITUDE: 25.0463764816}'
>>> print(re.match('GOOGLE_MAPS_LATITUDE:\s*(\d+\.\d+)', ll))
None

我总是得到None 虽然我100%确信正则表达式是正确的。

你能帮忙吗?

最佳答案

您需要使用re.search()而不是re.match()。第一个是查找字符串中任何位置的模式,另一个是查看该模式是否可以完全应用于字符串。

From the documentation :

re.search(pattern, string, flags=0)

Scan through string looking for a location where the regular expression pattern produces a match, and return a corresponding match object. Return None if no position in the string matches the pattern; note that this is different from finding a zero-length match at some point in the string.

示例:

>>> print(re.search('GOOGLE_MAPS_LATITUDE:\s*(\d+\.\d+)', ll))
<_sre.SRE_Match object at 0xffecf260>
>>> print(re.search('GOOGLE_MAPS_LATITUDE:\s*(\d+\.\d+)', ll).groups())
('25.0463764816',)
>>> print(re.search('GOOGLE_MAPS_LATITUDE:\s*(\d+\.\d+)', ll).group(1))
25.0463764816

关于python - 正则表达式总是给出 None,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23898573/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com