[Python3]描述输入一串字符,将输入中的,在<>里面的,没有前导0的少于4位的整数依次输出。单独的0也要输出。输入第一行是整数n,表示后面一共有n个字符串接下来有n行字符串输出对每个字符串,输出
描述
输入一串字符,将输入中的,在<>里面的,没有前导0的少于4位的整数依次输出。单独的0也要输出。
输入
第一行是整数n,表示后面一共有n个字符串
接下来有n行字符串输出
对每个字符串,输出题目要求的结果
样例输入
3 abc<123>cd<0456>,78,123<3554>1a<38>ab<08>,1<0>111cd<3> <12>cd<77347> <>样例输出
123 38 0 3 12 NONE代码如下:
import re # 读取行数 n = int(input()) # 对每一行进行处理 for _ in range(n): # 读取字符串 s = input() # 使用正则表达式查找所有尖括号内的数字 matches = re.findall(r'<(\d+)>', s) # 初始化标记,用于检查是否有符合条件的数字被找到 found = False # 遍历所有匹配的数字 for num in matches: # 检查数字是否没有前导0且少于4位,或者是单独的0 if (num == '0') or (num[0]!='0' and len(num) < 4): # 输出符合条件的数字,并设置标记为True print(num, end=' ') found = True # 如果没有找到任何符合条件的数字,则输出'NONE' if not found: print('NONE', end='') # 每处理完一行字符串后输出一个换行符 print()运行结果如下:
单词:
matches
n.比赛;火柴;竞赛;敌手;旗鼓相当的人
v.相同;配对;相配;相似;相一致;般配;找相称(或相关)的人(或物)
match的第三人称单数和复数
