如何提取字符串中斜杠之间的可变长度数字?
提取斜杠分隔字符串中间的可变长度数字
针对你遇到的问题——从T/数字/xxx格式的字符串中提取长度不固定的中间数字,固定切片因长度变化失效,这里提供两种实用解决办法:
方法一:字符串分割法
利用字符串的split('/')方法按斜杠分割,分割后的列表中第二个元素(索引为1)就是你要的数字,无需关心数字长度:
# 处理单个字符串 s = "T/12345/C" target_num = s.split('/')[1] print(target_num) # 输出:12345 # 处理Pandas DataFrame列 df['提取的数字'] = df['目标列'].str.split('/').str[1]
方法二:正则表达式匹配
如果需要兼容字符串格式的轻微变动(比如前后有空格),可以用正则精准匹配中间的数字部分,正则表达式r'T/(\d+)/'会捕获T/和/之间的所有数字:
import re # 处理单个字符串 s = "T/153460/613" match_result = re.search(r'T/(\d+)/', s) if match_result: target_num = match_result.group(1) print(target_num) # 输出:153460 # 处理Pandas DataFrame列 df['提取的数字'] = df['目标列'].str.extract(r'T/(\d+)/')
内容的提问来源于stack exchange,提问作者bravopapa
相关产品推荐
相关产品推荐

