在一行上输入一个长度为
、由大小写字母和数字混合构成的字符串
。
在一行上输出处理后的字符串
。
Jkdi234klowe90a3
Jkdi*234*klowe*90*a*3*
print(''.join(['牛'+i+'牛' if i.isdigit() else i for i in input()]).replace('牛牛','').replace('牛','*')) S=[x for x in input()]
S1=[x for x in S]
n=0
insert_num=0
for i in range(len(S1)):
if S1[i].isdigit()==True:
n+=1
# 一组数字的开头插入*
if n==1:
S.insert(insert_num+i,'*')
insert_num+=1
else:
if i<len(S1)-1:
continue
#字符串最后一组是数字
if n>0 and i==len(S1)-1:
S.append('*')
else:
#非末尾的一组数字结束后插入*
if n>0:
S.insert(insert_num+i,'*')
insert_num+=1
n=0
print("".join(S)) while True:
try:
s = input()
ls = [] # 用可变的列表来存储输出
for i in range(len(s)):
if not s[i].isnumeric():
ls.append(s[i])
else:
if (not s[i-1].isnumeric())&nbs***bsp;i==0: # 注意包含第一个字符就是数字的情况
ls.append('*')
for j in range(i, len(s)):
if s[j].isnumeric():
ls.append(s[j])
else:
ls.append('*')
break
if ls[len(ls)-1].isnumeric(): # 检验最后一个字符是否为数字
ls.append('*')
print(*ls, sep='')
except:
break import sys input_list = [] for line in sys.stdin: a = line.split() input_list.append(a) string_input = input_list[0][0] #first_sign用来标记当遇到第一个数字的情况 first_sign = 0 point=0 while(point < len(string_input)): #如果遇到数字,并且标记为0,说明第一次进入,需要前置增加一个星号,并改变标记为1 if(first_sign == 0 and string_input[point].isdigit()): string_input = string_input[:point] + "*" + string_input[point:] first_sign = 1 point = point+1 #如果遇到数字,并且标记为1,说明处于连续数字区间,直接移动 elif(first_sign == 1 and string_input[point].isdigit()): point = point+1 #如果没有遇到数字,并且标记为1,说明刚刚走出连续数字区间,要给上一位增加星号 elif(first_sign == 1 and not string_input[point].isdigit()): string_input = string_input[:point] + "*" + string_input[point:] first_sign = 0 point = point+1 #如果没有遇到数字,并且标记为0,普通情况,直接+1 elif(first_sign == 0 and not string_input[point].isdigit()): point = point +1 #上面的处理是没有考虑数字在最后的,需要额外判断 if(string_input[-1].isdigit()): string_input = string_input+"*" print(string_input)
s = input()
l = [] # 新建列表,依次加入并判断是否加星
if s[0].isdigit():
l.append('*' + s[0])
else:
l.append(s[0]) # 先判断第一位
for i in range(1,len(s)):
if s[i - 1].isdigit() and not s[i].isdigit(): # 前数本非数,等于数尾加星
l.append('*' + s[i])
elif not s[i - 1].isdigit() and s[i].isdigit(): # 前非本数,等于数前加星
l.append('*' + s[i])
else:
l.append(s[i]) # 前数本数不变,前非本非不变
if s[-1].isdigit():
l.append('*') # 尾数加星,尾非数不加
print(''.join(l))
while True:
try:
data = input()
res =[]
for x in data:
if x.isdigit():
res.append('1 *'+x+'1 *')
else:
res.append(x)
print(''.join(res).replace('1 *1 *', '').replace('1 *', '*'))
except:
break
将每个数字都换成带*的特殊字符,然后再替换掉重叠的字符和特定的字符
s=str(input())
l=[]
for i in range(len(s)):
if s[i].isdigit():
l.append('$'+s[i]+'$')
else: l.append(s[i])
x=''
for j in l:
x+=j
#&nbs***bsp;x=''.join(l)
#if '**' not in s:
# x=x.replace('**','')
# print(x)
#else: print(x)
#特殊情况2种
#example 1**3
#example Y1^*6**26*
x=x.replace('$$','')
x=x.replace('$','*')
print(x)
while True:
try:
a=input()
b=[i for i in a]
n=0
for i in range(len(a)):
if a[i].isdigit():
if i==0:
b.insert(0,'*')
n+=1
if i!=0:
if a[i-1].isdigit()==False:
b.insert(i+n,'*')
n+=1
if i!=len(a)-1:
if a[i+1].isdigit()==False:
b.insert(i+n+1,'*')
n+=1
if i==len(a)-1:
b.insert(i+n+1,'*')
n+=1
print (''.join(b))
except Exception as a :
break
s = list(input())
ls =[]
for i in range(len(s)):
if s[i]=='*':
ls.append('星')
elif s[i].isdigit()== False:
ls.append(s[i])
elif s[i].isdigit()== True: #将数字两边添加‘*’
ls.append('*')
ls.append(s[i])
ls.append('*')
a = ''.join(ls).replace('**', '')#如果是连续数字,中间会出现“**”,此时用replace除去
print(a.replace('星', '*')) #为防止原字符串有**被删除,先用‘星’代替,删除新增的**后再替换