python 正则卡死了 原来是表达式死循环了

用下面的正则表达式会造成死循环,具体原因后面分析

import re

url = "http://search.www.gov.cn/search/fw/cateSearch.do?webid=1&category=bmfw&q="

if re.match('^(https?:\/\/)?([\da-z\.-]+)\.([a-z\.]{2,6})([\/\w \.-]*)*\/?$', url):
    print 'ok'
else:
    print 'no'

换一个url的正则语法完了

url = "http://search.www.gov.cn/search/fw/cateSearch.do?webid=1&category=bmfw&q="

if re.match('https?://(?:[-\w.]|(?:%[\da-fA-F]{2}))+', url):
    print 'ok'
else:
    print 'no'
发布了16 篇原创文章 · 获赞 1 · 访问量 298

猜你喜欢

转载自blog.csdn.net/m0_46232048/article/details/104336042
今日推荐