正则表达式: regex
所有的正则表达式都在 re 模块中:
\d 任意数字 [0`9]--- 后面跟大括号里面包含数字, 表示重复几次:\d{3} ==\d\d\d,
向 re.compile() 传入字符串值, 返回一个正则表达式对象, 可以赋予一个变量这个对象有个 search 方法:
- text = 3good 654
- regular = re.compile(\d\d\d)
- match = regular.search(text) #text 里可以匹配, 返回一个 match 对象, 否则返回 NONE
match 对象有个 group 方法, 返回的是个字符串?
- >>>print(match.group())
- >>>654
貌似很拗口......>>>>>>re.compile(正则表达式串).search(被查找文本).group() # 返回了第一个符合表达式的字符串
- import re
- text = my telephone num is 010-110
- regular = re.compile(r\d\d\d-\d{3})
- mo = regular.search(text)
- print(The num is:,mo.group())
- >>>The num is: 010-110
\n 换行
在正则表达式中添加括号, 实际上就是在 group 方法中添加分组: group(0) 返回整个查找到的文本 group(1) 返回第一个分组, group(2) 返回第二个分组, 以此类推
- import re
- text = my telephone num is 010-110
- regular = re.compile(r(\d\d\d)-(\d{3}))
- mo = regular.search(text)
- print("First group is",mo.group(1))
- print("Second group is",mo.group(2))
- >>>
- First group is 010
- Second group is 110
一次获得所有分组用 mo.groups() 方法, 返回一个元组
来源: http://www.bubuko.com/infodetail-2524445.html