Python DataFrame提取CSV中company_permalink列的公司名称并去特殊字符
解决CSV中company_permalink列的公司名称提取问题
我看你已经有了初步的代码思路,现在帮你完善它,精准提取公司名称并去掉开头的特殊字符:
问题分析
你的现有代码已经完成了第一步:从/organization/-fame这类链接中提取出-fame部分,但后续的正则替换会把所有非字母数字字符都删掉,这不符合“仅去除开头特殊字符”的需求——比如如果公司名是fame-global,我们应该保留中间的-,只去掉开头的特殊符号。
完善后的代码
import re import pandas as pd # 先确认已加载CSV文件(如果还没加载的话) # company = pd.read_csv('company.csv') # 提取permalink中的目标部分,并去除开头的所有非字母数字字符 company_names = company['company_permalink'].apply( lambda x: re.sub(r'^[^a-zA-Z0-9]+', '', x.split('/')[2]) ) # 仅打印提取后的公司名称 for name in company_names: print(name)
代码细节说明
x.split('/')[2]:从类似/organization/-fame的链接中拆分出-fame这部分,和你原来的逻辑一致,适配示例里的链接结构。re.sub(r'^[^a-zA-Z0-9]+', '', ...):这里的正则^[^a-zA-Z0-9]+专门匹配字符串开头的一个或多个非字母数字字符,用空字符串替换后,只会去掉开头的特殊符号,保留名称中间的合法符号(比如连字符、下划线)。- 最后通过循环逐个打印结果,完全满足你“仅打印公司名称”的要求。
测试效果示例
- 输入
/organization/-fame→ 输出fame - 输入
/organization/_hello-world_123→ 输出hello-world_123
内容的提问来源于stack exchange,提问作者Rajsai
相关产品推荐
相关产品推荐

