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

如何在Python中从文件名提取指定子串(公司名称)

从文件路径提取公司名称并用于文件名拼接

针对你给出的固定格式文件路径,这里提供几种简单直观的方法提取公司名称,适配后续的文件名拼接需求:

方法1:字符串分割法(最直观)

直接通过字符串分割操作提取目标内容,适合路径格式完全固定的场景:

import datetime

file_path = 'pdl-skills-data/pdl_raw_data/skills_pdl_data_Visa.csv'

# 提取文件名部分(路径最后一段)
file_name = file_path.split('/')[-1]
# 分割文件名并提取公司名:去掉前缀"skills_pdl_data_"和后缀".csv"
Company_Name = file_name.split('_')[3].replace('.csv', '')

# 后续文件名拼接及上传代码
final_df.to_csv("original_df_with_clusters.csv")
timestamp = datetime.now().strftime('%Y%m%d%H%M')
result_path = 'pdl-skills-data/pdl_result_data/'
result = f'{result_path}original_df_with_clusters_{Company_Name}_{timestamp}.csv'
bucket.upload_file("original_df_with_clusters.csv", result)

方法2:用os.path模块处理(更规范)

借助Python内置的os.path模块处理路径,适配不同操作系统的路径分隔符,代码更健壮:

import os
import datetime

file_path = 'pdl-skills-data/pdl_raw_data/skills_pdl_data_Visa.csv'

# 获取纯文件名(不含路径)
file_name = os.path.basename(file_path)
# 分离文件名和后缀,得到不带.csv的部分
name_without_ext = os.path.splitext(file_name)[0]
# 分割提取公司名
Company_Name = name_without_ext.split('_')[3]

# 后续文件名拼接及上传代码
final_df.to_csv("original_df_with_clusters.csv")
timestamp = datetime.now().strftime('%Y%m%d%H%M')
result_path = 'pdl-skills-data/pdl_result_data/'
result = f'{result_path}original_df_with_clusters_{Company_Name}_{timestamp}.csv'
bucket.upload_file("original_df_with_clusters.csv", result)

方法3:正则表达式(适配特殊情况)

如果公司名称中包含下划线,前两种方法会失效,此时可以用正则表达式精准匹配:

import re
import datetime

file_path = 'pdl-skills-data/pdl_raw_data/skills_pdl_data_Visa.csv'

# 匹配"skills_pdl_data_"和".csv"之间的所有内容
match_result = re.search(r'skills_pdl_data_(.*)\.csv', file_path)
if match_result:
    Company_Name = match_result.group(1)

# 后续文件名拼接及上传代码
final_df.to_csv("original_df_with_clusters.csv")
timestamp = datetime.now().strftime('%Y%m%d%H%M')
result_path = 'pdl-skills-data/pdl_result_data/'
result = f'{result_path}original_df_with_clusters_{Company_Name}_{timestamp}.csv'
bucket.upload_file("original_df_with_clusters.csv", result)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.11 14:05:20