You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何提取含点字符串首尾点间内容?split函数是否适用及用法?

问题解答

能不能用split函数?

当然适合。这类文件名都是用.做分隔符的固定结构,split函数可以直接把字符串拆成按点分开的片段列表,只要截取中间部分再拼回去就能得到想要的结果。

具体怎么操作(拿Python举例)

先假设有这么一批文件名:

filenames = [
    "abc.xx.klm",
    "abc.xx.xx.klm",
    "abc.xx.xx.x.klm"
]

对每个文件名按这三步来:

  1. 用split('.')把文件名拆成列表:
    • 比如"abc.xx.klm"拆完是["abc", "xx", "klm"]
    • "abc.xx.xx.klm"拆完是["abc", "xx", "xx", "klm"]
  2. 跳过列表里第一个元素(要去掉的前缀)和最后一个元素(要去掉的后缀),取中间的所有片段
  3. 用.把这些中间片段重新拼成字符串

代码写出来是这样:

result = []
for name in filenames:
    parts = name.split('.')
    # 取中间部分:从索引1到倒数第二个元素(不包含最后一个)
    middle = parts[1:-1]
    result.append('.'.join(middle))

# 打印结果
for res in result:
    print(res)

跑起来就会输出:

xx
xx.xx
xx.xx.x

额外提醒

如果遇到不符合规范的文件名(比如点的数量不够),可以加个判断防止出错:

result = []
for name in filenames:
    parts = name.split('.')
    # 只有当分割后的片段数大于2时,才提取中间部分
    if len(parts) > 2:
        middle = parts[1:-1]
        result.append('.'.join(middle))
    else:
        # 这里可以根据需求处理,比如返回空字符串或者原文件名
        result.append('')

内容的提问来源于stack exchange,提问作者Su Fani

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.12 17:42:40