Python求满足条件的最长子串的长度

360影视 国产动漫 2025-03-10 10:44 2

摘要:import redef longest_valid_substring(s):# 使用正则表达式匹配所有包含至少一个字母且其余为数字的子串matches = re.findall(r'[A-Za-z][0-9]*|[0-9]*[A-Za-z][0-9]*',

import redef longest_valid_substring(s):# 使用正则表达式匹配所有包含至少一个字母且其余为数字的子串matches = re.findall(r'[A-Za-z][0-9]*|[0-9]*[A-Za-z][0-9]*', s)# 过滤掉全是字母或全是数字的无效子串valid_substrings = [match for match in matches if any(c.isalpha for c in match) and any(c.isdigit for c in match)]if not valid_substrings:return -1 # 如果没有符合条件的子串,返回 -1return max(len(sub) for sub in valid_substrings) # 返回最长的符合条件的子串的长度# 用户输入input_str = input("请输入字符串:")print(longest_valid_substring(input_str))过滤掉全是字母或全是数字的无效子串如果没有符合条件的子串,返回 -1返回最长的符合条件的子串的长度

来源:赟赟课堂

相关推荐