正则表达式入门[头歌题解]
·
题目来源:头歌平台------数据采集与网络爬虫
下述题解均通过测试,如果小伙伴有出现测试不通过的情况,大概是原题出现变化或是编码时出现漏缺,答案仅供参考,祝大家一通百通。
第1关:查找第一个匹配的字符串
1.选取bookstore元素的所有子节点
# coding=utf-8
# 在此导入python正则库
########## Begin ##########
import re
########## End ##########
check_name = input()
# 在此使用正则匹配'张明'的信息,结果存储到is_zhangming中
########## Begin ##########
is_zhangming = re.search(r'张明',check_name)
########## End ##########
if is_zhangming is not None:
print(is_zhangming.span())
else:
print(is_zhangming)
*********** End **********
第2关:基础正则表达式–字符组
# coding=utf-8
import re
input_str = input()
# 编写获取python和Python的正则,并存储到match_python变量中
########## Begin ##########
match_python = re.findall(r'[Pp]ython',input_str)
########## End ##########
print(match_python)
第3关:基础正则表达式–区间与区间取反
# coding=utf-8
import re
input_str = input()
# 1、编写获取到数字的正则,并输出匹配到的信息
########## Begin ##########
num_search = re.findall(r'[0-9]',input_str)
print(num_search)
########## End ##########
# 2、编写获取到不是数字的正则,并输出匹配到的信息
########## Begin ##########
not_num_search = re.findall(r'[^0-9]',input_str)
print(not_num_search)
########## End ##########
第4关:基础正则表达式–快捷方式
# coding=utf-8
import re
input_str = input()
# 1、编写获取到单词的正则,并输出匹配到的信息
########## Begin ##########
word_search = re.findall(r'\w',input_str)
print(word_search)
########## End ##########
# 2、编写获取到不是单词的正则,并输出匹配到的信息
########## Begin ##########
not_word_search = re.findall(r'\W',input_str)
print(not_word_search)
########## End ##########
第5关:字符串的开始与结束
# coding=utf-8
import re
input_str = input()
# 1、编写获取到以educoder开头的正则,并存储到变量a
########## Begin ##########
a = re.search(r'^educoder',input_str)
########## End ##########
if a is not None:
print(a.span())
else:
print(a)
# 2、编写获取到以educoder结束的正则,并存储到变量b
########## Begin ##########
b = re.search(r'educoder$',input_str)
########## End ##########
if b is not None:
print(b.span())
else:
print(b)
第6关:任意字符
# coding=utf-8
import re
input_str = input()
# 编写获取(任意字符)+ython的字符串,并存储到变量a中
########## Begin ##########
a = re.findall('.ython',input_str)
########## End ##########
print(a)
第7关:可选字符
# coding=utf-8
import re
input_str = input()
# 编写获取she或者he的字符串,并存储到变量a中
########## Begin ##########
a = re.findall(r's?he',input_str)
########## End ##########
print(a)
第8关:重复区间
# coding=utf-8
import re
input_str = input()
# 1、基于贪心模式匹配字符串中重复出现2个数字的子字符串,并存储到变量a。
########## Begin ##########
a = re.findall(r'\d{2}',input_str)
//a = re.findall(r'[0-9]{2}',input_str)
########## End ##########
print(a)
# 2、基于贪心模式匹配字符串中重复出现4-7个数字的子字符串,并存储到变量b。
########## Begin ##########
b = re.findall(r'\d{4,7}',input_str)
//b = re.findall(r'[0-9]{4,7}',input_str)
########## End ##########
print(b)
第8关:开闭区间与速写
# coding=utf-8
import re
input_str = input()
# 1、基于贪心模式匹配字符串中连续出现5个数字以上的子字符串,并存储到变量a。
########## Begin ##########
a = re.findall(r'\d{5,}',input_str)
########## End ##########
print(a)
# 2、匹配字符串中都为数字的子字符串,并存储到变量b。
########## Begin ##########
b = re.findall(r'\d+',input_str)
########## End ##########
print(b)
更多推荐
所有评论(0)