这题包含了太多情况,要考虑最后一个字符是数字还是字符,开头是不是数字等,还需要考虑是否没有数字。综合看,逻辑题。
while True:
try:
str1 = str(input())
flag = 0
k = []
for i in range(len(str1)):
if(flag == 0 and '0' <= str1[i] <= '9'):
flag = 1
k.append(i)
elif(flag == 1 and (str1[i] > '9'or str1[i] < '0')):
flag = 0
k.append(i)
if(len(k) == 0):
print(str1)
else:
res_str = ''
for i in range(len(k)):
if(i == 0):
if(k[i] != 0):
res_str = res_str + str1[0:k[i]] + '*'
else:
res_str = res_str + '*'
elif(i == len(k) - 1):
res_str = res_str + str1[k[i-1]:k[i]] + '*' + str1[k[i]:]
if('0' <= str1[k[i]] <= '9'):
res_str += '*'
else:
res_str = res_str + str1[k[i-1]:k[i]] + '*'
print(res_str)
except:
break 


京公网安备 11010502036488号