python里正则表达式基础及注意事项
2024-08-25 13:08:01
感觉正则匹配是一件很酷的事,用得好的话可以极大地提高编程效率。虽然在html中BeautifulSoup更好用一些,但有时候还是需要使用正则匹配。所以就此做一些学习和使用过程中的笔记。
python有自带的正则库:re。使用只需要import re就好。
先零散地写一些,之后做整理:
re.compile(str expression) -按expression指示的正则表达式返回一个正则查询的类 可以将此语句赋值给某变量之后复用 此处赋值给变量a
a.search(str targetString) -用上述正则查询类的search方法匹配所给的目标文本targetString,但只能返回第一次匹配成功的结果。一般仅用作检测表达式正确与否。
list a.findall(str targetString) -与search类似 但顾名思义可以得到所有结果
学习基本上有这个网站就够用了:
正则表达式语法:http://tool.oschina.net/uploads/apidocs/jquery/regexp.html
适合简单测试所写表达式用的网站:http://tool.oschina.net/regex/
注意事项:
此处参考文章:https://www.cnblogs.com/achillis/p/10353963.html
a.search若能得到理想匹配结果,则要坚信自己的表达式没有问题。此时很自然地换成findall想得到所有结果,但有时findall方法会得到片段式的、看起来错误的结果。
这是因为findall会将正则表达式里括号部分的匹配内容单独输出,因此只能得到一些片段。要得到正确结果,只需要在自己表达式所有括号内端开头加上?:即可。
最新文章
- Effective Python2 读书笔记1
- SQL 分页
- jQuery核心之jQuery Object及其相关的常用方法
- F1 分数
- PL/SQL注册码
- Android activity 周期图
- hdu 4499 Cannon(暴力)
- 28 个 Unix/Linux 的命令行神器
- tcpdump抓包并保存成cap文件
- Windows phone 8 学习笔记(8) 定位地图导航
- Sliverlight之 故事板
- Top 100 Best Blogs for iOS Developers
- C# .NET更智能的数据库操作的封装
- 容器与Docker简介(四)Docker容器,镜像与 Registries——微软微服务电子书翻译系列
- Java提升篇之反射的原理
- Django+wechatpy接入微信公众平台以及授权登录
- JAVA\Android 多线程实现方式及并发与同步
- 9.14 h5日记
- oracle exp imp日常使用
- c#无边窗体实现移动的两种方式