python-正则表达式
来源:互联网 发布:棉麻格子连衣裙淘宝 编辑:程序博客网 时间:2024/06/05 00:31
(一)正则表达式主要是为了查找匹配字符,例如在字符串或者文本中寻找以“我”开头以“她”结尾的字符串。
(二)正则表达式的特殊字符:
1)^$?+{2}{2,}{2,5}| 2)[][^][a-z] 3)\s\S\w\W 4)[\u4E00-\u9FA5]()\d
(三)正则表达式有一个包“re”,即在使用正则表达式时之前需要先import re
^代表开头字符,如^b表示以b开头的字符。.表示任意字符。*代表前一个字符出现任意多次,包括零次,+代表至少一次。即“^b.*”代表以b开头中间出现任意字符任意多次的字符。$代表结尾字符,如“^.*3$”代表以任意字符开头,以3结尾的字符。?代表**非贪婪匹配模式**,贪婪模式时为了匹配到符合匹配模式的最长字符串,实际上贪婪匹配模式就是匹配模式和待匹配字符都从右向左匹配,?代表的非贪婪即从左往右匹配,之一?号的位置如:
import re
line=”ja’sdsa3b2bds”
regex_str=”^.(a.*b).” #需要输出的匹配模式用括号括起来
match_obj=re.match(regex_str,line) # re包中的match函数,即re.match(匹配模式,待匹配字符)
if match_obj:
print(match_obj.group(1)) #输出匹配好的字符串,括号中的1表示从外向内第一个括号
运行结果:a3b2b #此为贪婪算法,即从右往左匹配。
若改为:
regex_str=”^.?(a.*b).”
运行结果:a’sdsa3b2b #即以a开头为非贪婪(从左往右),以b结尾为贪婪。
若改为:
regex_str=”^.?(a.?b).*”
运行结果为:a’sdsa3b
{2}代表前一个字符出现两次,{2,}代表前一个字符至少出现两次,{2,5}代表至少2次,至多5次。|代表或。
【】代表括号内任意一个字符,如”^【123】”代表以1或2或3开头都行;【0-9】表示0-9区间的任意一个字符;【】内的任意符号表示符号本身,
如【^9】不表示以9开头,而表示除了9之外的字符。
\s代表空格,\S表示非空格。同理\w代表【A-Za-z0-9_】,\W代表\w相反的含义。即大写表示小写的非。
[\u4E00-\u9FA5]代表中文。
\d表示数字。
- python正则表达式学习
- c++正则表达式,python
- Python正则表达式(一)
- python的正则表达式
- Python正则表达式
- Python初学-正则表达式
- 正则表达式与python
- python正则表达式学习
- python正则表达式学习
- python正则表达式学习
- python正则表达式
- Python - 正则表达式
- Python正则表达式
- python正则表达式
- Python正则表达式指南
- Python正则表达式指南
- Python 正则表达式指南
- python 正则表达式
- 手机之后,董明珠杀入汽车市场,格力拟130亿收购珠海银隆
- 四岁的微信公众平台,是如何从“小个体”成长为“大平台”的?
- 本周锋评:谁敢偷我无人车的车轱辘?
- C#数据结构--栈Stack
- 动态规划J
- python-正则表达式
- OpenCV(四)图像算术、混合
- 关于0-1背包问题的个人理解
- Java 模拟器-接口
- 处理JS分页加载的网页_recv
- c++学习笔记
- ubuntu eclipse CDT编译mysql源码
- Workerman
- 复数的抽象数据类型实现(指针)