我必须在字符串的最后一个整数值之前添加一个字符串
string = "298 Anna salai Chennai 607106"
预期结果:
"298 Anna salai Chennai TN 607106"
答案 0 :(得分:2)
您应该为此使用正则表达式:
import re
string = "298 Anna salai Chennai 607106"
string = re.sub(r'(\d+)$', r'TN \1', string)
print(string)
如果要重复搜索和替换,则应首先编译该模式。
import re
string1 = "298 Anna salai Chennai 607106"
string2 = "111 ABC 123456"
pattern = re.compile(r'(\d+)$')
repl = r'TN \1'
string1 = re.sub(pattern, repl, string1)
string2 = re.sub(pattern, repl, string2)
print(string1)
print(string2)
答案 1 :(得分:0)
只需找到子字符串的索引并使用拆分创建新字符串:
m = re.search(r'(\d+)\D*$',string)
number = m.group()
i = string.find(number)
new_string = string[:i] + "TN " + string[i:]
答案 2 :(得分:0)
您可以使用正则表达式(regex)执行此类任务
了解有关regex
import re
re.search(r'(\d+)\D+$', string).group(1)
答案 3 :(得分:0)
要获取字符串中的最后一项(即数字),您要做的就是使用split
last_value_integer = int(string.split(' ')[len(string.split(' '))-1])