正确正则在Python中无匹配结果,报AttributeError问题求助
问题原因及解决方法
你的正则表达式里多了个不必要的前置斜杠:/destination=,但目标URL里的参数是&destination=,没有这个斜杠,导致re.search找不到匹配结果,返回了None,调用group()自然触发AttributeError。
修正后的代码如下:
import re pattern = r"destination=(-?\d+\.\d+),(-?\d+\.\d+)" url = "https://www.google.com/maps/dir/?api=1&destination=12.1234567890,-12.1234567890" result = re.search(pattern, url) if result: # 建议增加判断,避免匹配失败时再次报错 latitude = result.group(1) longitude = result.group(2) print(latitude, longitude) else: print("未匹配到经纬度")
另外,建议在调用group()前先判断result是否为None,这样即使URL格式出现变化,也不会直接抛出异常。
内容的提问来源于stack exchange,提问作者Firefly
相关产品推荐
相关产品推荐

