题目来源:头歌平台------数据采集与网络爬虫
下述题解均通过测试,如果小伙伴有出现测试不通过的情况,大概是原题出现变化或是编码时出现漏缺,答案仅供参考,祝大家一通百通。

第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)


Logo

北京人形旗下天工造物具身智能开源社区,聚焦具身天工与慧思开物两大平台

更多推荐