第一,正则表达式介绍
1. 为什么必须会正则表达式?关于正则表达的详细介绍可查看一篇官网的技术文档!
正则表达式是一个特殊的字符序列,它能帮助你方便的检查一个字符串是否与某种模式匹配。正则表达式,又称规则表达式,通常被用来检索、替换那些符合某个模式(规则)的文本。正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。
2.熟悉掌握以下基本的正则表达式意义!
1) ^ $ * ? + {2} {2, } {2,5} |
2) [] [^] [a-z] .
3) \s \S \w \W
4) [\u4E00-\u9FA5] () \d
2. 正则表达式的简单应用及python示例
提取出字符串中的生日!我们知道,生日的写法有很多种,这里就以此为需求,按照要求筛选你需要的字符串!
import re
broth="我的生日是1991年02月14日"
#broth="我的生日是1991-02-14"
#broth="我的生日是1991-2-14"
#broth="我的生日是1991/02/14"
#broth="我的生日是1991/2/14"
#broth="我的生日是1991年02月"
#broth="我的生日是1991年02"
regstr=".*生日是((\d{4}[年/-]\d{1,2})(([月/-]($|\d{1,2}))|$).*)"
#regstr=".*([/年-])"
objectMatch=re.match(regstr,broth)
if objectMatch:
print(objectMatch.group(1))
这里需要注意一个东西就是[年/-]这个匹配的规则,其中只要调换顺序,python就报错了,[年-/]就是“-/”这样子组合就报错了,一直没搞明白为什么,如果看到这里的有人知道的话,麻烦给个解答,在此谢过了!下面给出报错的图:
到此,整个的基础知识算是介绍完了,接下来就开始项目的实战训练了!后面的知识才是重点,前面的这些都是为后面的开发做的准备,孰轻孰重一目了然!