逆序索引第一个字母字符(情况一)后,再逆序索引第一个非字母字符(情况二),然后就可以输出该字符子串了。
在最后的开头时,需要区分是目前索引到情况一还是情况二了,然后再判断输出的情况。
while True:
try:
str1 = str(input())
k = len(str1)
flag1 = 0
flag2 = 0
m = k
n = 0
for i in range(k-1, -1, -1):
if(i != 0 and flag1 == 0):
if(ord(str1[i]) >= 65 and ord(str1[i]) <= 90) or (ord(str1[i]) >= 97 and ord(str1[i]) <= 122):
flag1 = 1
m = i
if(i != 0 and flag1 == 1):
if(ord(str1[i]) < 65 or (ord(str1[i]) > 90 and ord(str1[i]) < 97) or ord(str1[i]) > 122):
n = i
print(str1[n+1:m+1], end=' ')
flag1 = 0
if(i == 0 and flag1 == 1 and ((ord(str1[0]) >= 65 and ord(str1[i]) <= 90) or (ord(str1[i]) >= 97 and ord(str1[i]) <= 122))):
print(str1[0:m+1],end = ' ')
break
elif(i == 0 and flag1 == 1and (ord(str1[i]) < 65 or (ord(str1[i]) > 90 and ord(str1[i]) < 97) or ord(str1[i]) > 122)):
print(str1[1:m+1], end = ' ')
break
elif(i == 0 and flag1 == 0):
print(str1[0])
except:
break


京公网安备 11010502036488号