案例一:匹配用户输入的邮箱地址是否正确
邮箱地址要求:6-18个字符,可使用字母、数字、下划线,但需要以字母开头。
import re
def check_Email():
# [email protected],@mi.com,@t.tt,@tyywqeyu.com.cn
email = input("请输入邮箱的地址:")
#如果在正则表达式中用到了某些字符如 . 或者 ? 等,仅需在他们前面添加一个\进行转义即可
ret = re.match(r"^[a-zA-Z][a-zA-Z0-9_]{5,17}@[a-zA-Z0-9_]+\.[a-zA-Z]+$", email)
if ret:
print("%s符合要求" % email)
else:
print("%s不符合要求" % email)
if __name__ == '__main__':
check_Email()
案例二:提取招聘网页中的信息
要求:使用正则表达式将以上字符串去除p标签,输出的时候,必须为一行,不能行输出
#2、提取招聘网页中的信息,使用正则表达式将以上字符串去除p标签,输出的时候,必须为一行,不能行输出
def main():
s = """<div>
<p>岗位职责:</p>
<p>完成推荐算法、数据统计、接口、后台等服务器端相关工作</p>
<p><br></p>
<p>必备要求:</p>
<p>良好的自我驱动力和职业素养,工作积极主动、结果导向</p>
<p> <br></p>
<p>技术要求:</p>
<p>1、一年以上 Python 开发经验,掌握面向对象分析和设计,了解设计模式</p>
<p>2、掌握HTTP协议,熟悉MVC、MVVM等概念以及相关WEB开发框架</p>
<p>3、掌握关系数据库开发设计,掌握 SQL,熟练使用 MySQL/PostgreSQL 中的一种<br></p>
<p>4、掌握NoSQL、MQ,熟练使用对应技术解决方案</p>
<p>5、熟悉 Javascript/CSS/HTML5,JQuery、React、Vue.js</p>
<p> <br></p>
<p>加分项:</p>
<p>大数据,数理统计,机器学习,sklearn,高性能,大并发。</p>
</div> """
if __name__ == '__main__':
main()
print(re.sub(r"<[^>]*>| |\s","",s))#两种方式均可。
#print(re.sub(r"</?\w+>|\n|\s","",s))