华为OD机试真题-API集群负载统计-2023年OD统一考试(C卷)--python-开源
考察内容:正则匹配;split分割索引位置判断。
·
题目:
考察内容:正则匹配;split分割索引位置判断
代码
"""
题目分析:
重点:URL地址,通过/分割;
层级, 完全匹配(大小写敏感)
# 输入
日志条数
url地址
层级L和关键字
输出
关键字再层级l的出现次数
eg:
5
/huawei/computing/no/one
/huawei/computing
/huawei
/huawei/cloud/no/one
/huawei/wireless/no/one
2 computing
思路分析:正则表达式,查询层级处是否存在关键字(大小写敏感)
思路1:通过split,切分,然后指定索引位置判断
思路2:正则
"""
import re
N = int(input())
path_list = list()
for _ in range(N):
path = input()
path_list.append(path)
L, keyword = input().split()
level = int(L)
def way1_split(path_list):
sum = 0
for path in path_list:
temp_list = path.split("/")
print(temp_list)
if len(temp_list) > level and temp_list[level] == keyword:
sum += 1
return sum
def way2_re(path_list):
sum = 0
# +,至少匹配1次,*可以匹配0次
rematch = "/"+"*/"*(level-1) + keyword + "*"
print(1, rematch)
pattern = re.compile(rematch)
for path in path_list:
res = pattern.search(path)
if res:
print(path, res.group())
sum += 1
return sum
sum = way2_re(path_list)
print(sum)
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
已为社区贡献5条内容
所有评论(0)