python 字符串匹配问题
问题描述
想匹配html = <p class='back fl'><a href='javascript:void(0);' onclick='_gaq.push([’_trackEvent’,’function’, ’onclick’, ’blog_articles_shangyipian’]);location.href=’/u012582664/article/details/56845037’;'><span><i class='fa fa-arrow-left'></i></span><em>安装最新版python</em></a></p><p class='forward fr'><a href='javascript:void(0);' onclick='_gaq.push([’_trackEvent’,’function’, ’onclick’, ’blog_articles_xiayipian’]);location.href=’/u012582664/article/details/59120585’;'><em>各种数据库的注释</em><span><i class='fa fa-arrow-right'></i></span></a></p>中的‘56845037’和‘59120585’,尝试用正则:
pattern_l = r’’’<a href='javascript:void(0);' onclick='_gaq.push([’_trackEvent’,’function’, ’onclick’, ’blog_articles_shangyipian’]);location.href=’(.+?)’;'>’’’re.findall(pattern_l,html)
结果不成功。返回为空,有用:
soup = BeautifulSoup(html, 'lxml')print(soup.find_all(onclick='_gaq.push([’_trackEvent’,’function’, ’onclick’, ’blog_articles_shangyipian’]);location.href=’/u012582664/article/details/(.+?)’;'))
还是返回空,请教各位怎么写才行,是哪里出了问题
问题解答
回答1:前面那一大堆东西其实用不着匹配。
匹配这些就够了:
re.findall(r'location.href=’/u012582664/article/details/(d+)',html)回答2:
括号转义下试试?小括号和中括号在正则里有特殊意义
相关文章:
1. javascript - vue 数据更新了。但是dom没有更新,,,,,如图2. html5 - 百度Ueditor代码高亮和代码段滚动条冲突是怎么回事?3. javascript - 读取页面源码,页面中所有的换行都被当成<br/>读取出来 了,,求解应该怎么让它被正确的解析4. javascript - 静态页面引公共头尾文件,js怎么写吖?5. docker api 开发的端口怎么获取?6. java - 为什么要将Runnable接口的子类对象传递给Thread的构造函数?7. debian - docker依赖的aufs-tools源码哪里可以找到啊?8. javascript - 关于一段 for 循环代码执行顺序的问题9. java基础,求解答。10. 如何调整IDEA中直接运行java程序的日志输出级别?