如何识别字符串中的最后一个整数值

2024-10-04 07:35:54 发布

您现在位置:Python中文网/ 问答频道 /正文

我必须在字符串中最后一个整数值之前添加一个字符串

string = "298 Anna salai Chennai 607106"

预期结果:

"298 Anna salai Chennai TN 607106"

Tags: 字符串stringtn数值annachennaisalai
3条回答

您应该为此使用regex:

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)

您可以使用正则表达式(regex)执行此类任务
阅读更多关于regex

import re
re.search(r'(\d+)\D+$', string).group(1)

只需找到子字符串的索引并使用拆分创建新字符串:

m = re.search(r'(\d+)\D*$',string)
number = m.group()    
i = string.find(number)
new_string = string[:i] + "TN " + string[i:]

相关问题 更多 >