Python如何截取指定字符序列后的内容 例如提取字符串末尾数字
Python截取指定字符序列后数字的实现方案
以下是2种适合新手的简单实现方式,你可以根据自己的场景选择:
方案1:字符串切片法(逻辑最简单,适合固定前缀场景)
适用于你明确知道目标前缀的完整内容,且前缀在字符串中仅出现一次的场景:
# 定义原始字符串和要匹配的指定前缀 raw_str = "TestExample123" target_prefix = "TestExample" if target_prefix in raw_str: # 从前缀结束的位置开始截取后续内容 suffix_content = raw_str[len(target_prefix):] # 提取后续内容中的所有数字 result = ''.join([char for char in suffix_content if char.isdigit()]) print(result) # 输出结果:123
如果可以确定前缀之后的内容全是数字,不需要过滤非数字字符,直接输出suffix_content即可。
方案2:正则匹配法(更通用,适配复杂场景)
如果前缀出现位置不固定、或者需要直接精准匹配前缀后的连续数字,可以用Python自带的re正则模块实现:
import re raw_str = "TestExample123" target_prefix = "TestExample" # 匹配指定前缀后的连续数字 match_obj = re.search(rf"{re.escape(target_prefix)}(\d+)", raw_str) if match_obj: result = match_obj.group(1) print(result) # 输出结果:123
说明:re.escape用来处理前缀中包含正则特殊字符(比如./*?等)的情况,避免匹配逻辑出错。
内容的提问来源于stack exchange,提问作者Apple
相关产品推荐
相关产品推荐

