记录一个遇到的测试题
题目:输入字符串样式:‘3a4cdb’,输出aaaccccdb;字符串中的数字小于100,输出的字符串总长度小于100
解法:
import re
a=str(input()).strip()####读取键盘输入并剔除前后空值
k=re.findall(r'[0-9]*[a-z]?',a)######利用正则表达式将输入的字符串按照数字切片
s=''
for i in k:
if re.sub('\D','',i)=='': #####字母前没有数字的不用重复
s+=i
else:
s+=int(re.sub('\D','',i))*i[-1]#####按照字母前的数字重复字母
if len(s)>=100:
print('字符串过长')
elif len(s)==0:
print('字符串不能为空')
else:
print(s)