Python如何从字符串首个数字开始拆分(非正则实现)
不用正则实现从字符串首个数字位置拆分字符串
要实现从字符串首个数字出现的位置开始拆分并保留后续内容,不用正则的话,可以通过遍历字符串找到第一个数字的索引,再用字符串切片完成截取。
实现代码
def split_from_first_digit(s): for index, char in enumerate(s): if char.isdigit(): return s[index:] return s # 若字符串无数字,返回原字符串(可按需调整为返回空串)
测试示例
# 测试输入1 print(split_from_first_digit("TengGigE0/0/3/4")) # 输出: 0/0/3/4 # 测试输入2 print(split_from_first_digit("TengigabitEthernet 4/3/4/3")) # 输出: 4/3/4/3 # 测试输入3 print(split_from_first_digit("Te0/4/5")) # 输出: 0/4/5
代码说明
- 用
enumerate()遍历字符串,同时获取字符的索引和内容 - 通过
str.isdigit()判断当前字符是否为数字,找到第一个符合条件的索引后,直接返回从该索引到字符串末尾的切片 - 若字符串中不存在数字,函数会返回原字符串,可根据实际需求修改这部分逻辑
内容的提问来源于stack exchange,提问作者mac
相关产品推荐
相关产品推荐

