任务描述
本关任务:学会导入python的正则表达式库,使用该库方法的search方法编写一个匹配小程序。该方法能查看某个学生名字是否在此学生信息中。
相关知识
为了完成本关任务,你需要掌握:
- 如何在 python 中引入正则表达式库;
- re库中search方法的使用。
1、在Python 中使用正则表达式
正可谓人生苦短,我用Python。Python有个特点就是库非常多,自然拥有正则匹配这种常见的库,并且此库已经嵌入在Python标准库中,使用起来非常方便,只需要在代码中导入re模块即可。
import re
Python的re模块,使得Python具备了使用全部正则表达式的功能。为了让我们灵活的使用正则表达式,现在咱们的任务就是学习正则在re库中的使用。
2、最基础正则表达式
正则表达式是一个以简单直观的方式通过寻找模式匹配文本的工具。
听起来比较复杂,实际非常简单,下面开始体验最简单的正则表达式。最简单的正则表达式是些仅包含简单字母数字字符的表达式——不包含任何其他字符,在这种情况下正则表达式完完全全就是一个正常的字符串。
举例说明,我们要匹配张明,那么张明这两个字符就是我们需要的正则表达式。
3、正则匹配函数
知道了最基础正则表达式,可是如何在python中使用了?首先我们学习第一个函数,search()函数,它的目的是接收一个正则表达式和一个字符串,并返回发现的第一个匹配的字符串。
import re
a = re.search(r'fox','the quick brown fox jumpred') #第一个参数为正则表达式,第二个参数为要处理的字符串
print(a.span()) # span方法获取的是正则表达式匹配到的位置
b = re.search(r'www','the quick brown fox jumpred')
print(b) #如果匹配不到则会返回None
输出如下:
(16, 19)
None
如何匹配到了,我们输出他在正则表达式中的位置,如果没有匹配到,则输出为空。
编程要求
请仔细阅读右侧代码,根据方法内的提示,在Begin - End区域内进行代码补充,具体任务如下:
- 导入相关包;
- 查看此信息是不是张明的信息,查找结果存储在is_zhangming变量中。
测试说明
补充完代码后,点击测评,平台会对你编写的代码进行测试,当你的结果与预期输出一致时,即为通过。
测试输入:张伟 86-14870293148;
预期输出:
None
测试输入:张明;
预期输出:
(0,2)*
# coding=utf-8
# 在此导入python正则库
########## Begin ##########
import re
########## End ##########
check_name = input()
# 在此使用正则匹配'张明'的信息,结果存储到is_zhangming中
########## Begin ##########
is_zhangming = re.search('张明',check_name)
######### End ##########
if is_zhangming :
print(is_zhangming.span())
else:
print(is_zhangming)
Python正则表达式:搜索匹配字符串
本篇博客介绍了如何在Python中使用正则表达式库`re`,特别是`search`方法来检查学生名字是否存在于信息中。通过一个简单的例子展示了如何匹配特定字符串并获取匹配的位置。


被折叠的 条评论
为什么被折叠?



