You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

正则表达式匹配失败引发AttributeError:NoneType对象无group属性

问题解决:正则匹配返回None导致AttributeError

你的问题出在正则表达式里的?字符——它在正则语法中是特殊元字符,代表匹配前面的元素0次或1次,但你这里要匹配的是原字符串里的字面量?,所以必须转义成\?才能让正则引擎把它当作普通字符处理。

修正后的代码:

import re

b='href="/bp/vendor?vendorCodes=C901U">C901U</a></span></div></div></div><div heyaa'

# 将正则中的?转义为\?
c=re.search('href="/bp/vendor\?vendorCodes=C901U">C901U</a></span></div></div></div><div',b)
print(c.group())

如果你的核心需求是提取vendorCodes对应的代码(比如示例中的C901U),可以写更灵活的正则,不用硬匹配整个冗长的HTML片段:

# 提取vendorCodes的对应值
match = re.search(r'href="/bp/vendor\?vendorCodes=([A-Z0-9]+)">\1</a>', b)
if match:
    print(f"匹配到的vendorCode: {match.group(1)}")

这种写法能适配HTML结构的小变动,更稳定地提取目标信息。

内容的提问来源于stack exchange,提问作者Areff

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 17:24:48