📜  Python程序在字符串中增加后缀数

📅  最后修改于: 2022-05-13 01:55:11.995000             🧑  作者: Mango

Python程序在字符串中增加后缀数

给定一个字符串,任务是编写一个Python程序来增加字符串末尾的数字。

方法#1:使用 findall() + join() + replace()

在这个策略中,我们使用 findall() 执行查找数字的任务,然后执行分离数字字符串和前缀字符串的任务,然后执行数字字符串的递增。最后,字符串被连接起来得到一个前缀,后跟一个递增的数字。

Python3
# Python3 code to demonstrate working of 
# Increment Suffix Number
# Using findall() + join() + replace()
import re
  
# initializing string
test_str = 'geeks006'
  
# printing original string
print("The original string is : " + str(test_str))
  
# getting suffix number 
reg = re.compile(r'[ 0 - 9]')
mtch = reg.findall(test_str)
  
# getting number 
num = ''.join(mtch[-3 : ])
pre_str = test_str.replace(num, '')
  
# Increment number 
add_val = int(num) + 1
  
# joining prefix str and added value 
res = pre_str + str(add_val)
      
# printing result 
print("Incremented numeric String : " + str(res))


Python3
# Python3 code to demonstrate working of 
# Increment Suffix Number
# Using sub() + group() + zfill()
import re
  
# initializing string
test_str = 'geeks006'
  
# printing original string
print("The original string is : " + str(test_str))
  
# fstring used to form string 
# zfill fills values post increment
res = re.sub(r'[0-9]+$',
             lambda x: f"{str(int(x.group())+1).zfill(len(x.group()))}", 
             test_str)
      
# printing result 
print("Incremented numeric String : " + str(res))


输出:

The original string is : geeks006
Incremented numeric String : geeks61

方法#2:使用 sub() + group() + zfill()

在这里,我们使用 group() 和递增执行对数字进行分组的任务, zfill() 用于填充数字所需的前导值的任务。 sub() 用于查找字符串的数字部分。

蟒蛇3

# Python3 code to demonstrate working of 
# Increment Suffix Number
# Using sub() + group() + zfill()
import re
  
# initializing string
test_str = 'geeks006'
  
# printing original string
print("The original string is : " + str(test_str))
  
# fstring used to form string 
# zfill fills values post increment
res = re.sub(r'[0-9]+$',
             lambda x: f"{str(int(x.group())+1).zfill(len(x.group()))}", 
             test_str)
      
# printing result 
print("Incremented numeric String : " + str(res)) 

输出:

The original string is : geeks006
Incremented numeric String : geeks007