为了账号安全,请及时绑定邮箱和手机立即绑定

python中的正则匹配问题。

python中的正则匹配问题。

千万里不及你 2019-04-08 09:21:44
importrestr=''result=re.findall('t[^>]*name=\"__VIEWSTATE\"[^>]*value=\"([^"]*)\"[^>]*>',str)printresult为何输出是dDwyODE2NTM0OTg7Oz5K4/a3o5bbNExGrhnw9E1HvQLfjg==而不是呢?
查看完整描述

2 回答

?
慕无忌1623718

TA贡献1744条经验 获得超4个赞

Returnallnon-overlappingmatchesofpatterninstring,asalistof
strings.Thestringisscannedleft-to-right,andmatchesarereturned
intheorderfound.Ifoneormoregroupsarepresentinthepattern,
returnalistofgroups;thiswillbealistoftuplesifthepattern
hasmorethanonegroup.Emptymatchesareincludedintheresult
unlesstheytouchthebeginningofanothermatch.
我把文档处加黑了,注意你的正则里有capturegroup,findall()只返回含有capturegroup的结果。
                            
查看完整回答
反对 回复 2019-04-08
?
GCT1015

TA贡献1827条经验 获得超4个赞

首先,你不应该使用findall的方法,只是匹配这段文字且匹配一次,直接用search即可。具体可以参考python正则表达式的使用。
其次,你正则也写错了,肯定是匹配不出来你要的那个结果。
改了一下你的代码,这段代码运行结果和你预期一致,但估计实际使用的正则还要根据情况进行调整。
importre
str=''
result=re.search(']*name=\"__VIEWSTATE\"[^>]*value=\"([^"]*)\"[^>]*>',str)
printresult
                            
查看完整回答
反对 回复 2019-04-08
  • 2 回答
  • 0 关注
  • 362 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信