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

在R语言中提取[...]模式内字符串并生成新列

解决方案(基于Python Pandas)

如果你用Python的pandas库处理这类文本提取需求,可以按以下步骤实现:

1. 准备数据

先构造示例数据框(可替换为你的实际数据源):

import pandas as pd

df = pd.DataFrame({
    'Industry': ['所有行业总计', '农业 [11]', '制造业 [31-33]']
})

2. 生成Code列

提取Industry列中方括号及内部的内容,无匹配项时填充为空字符串:

df['Code'] = df['Industry'].str.extract(r'(\[.*?\])').fillna('')

3. 生成Industry_2列

移除Industry列中的方括号及内部内容(包括括号前的空格),保留剩余纯行业名称:

df['Industry_2'] = df['Industry'].str.replace(r'\s*\[(.*?)\]', '', regex=True)

最终结果

执行上述代码后,数据框将完全符合你的预期格式:

IndustryCodeIndustry_2
所有行业总计所有行业总计
农业 [11][11]农业
制造业 [31-33][31-33]制造业

正则表达式说明

  • (\[.*?\]):精准匹配方括号及其中的内容,.*?采用非贪婪模式,避免错误匹配多个方括号的场景
  • \s*\[(.*?)\]:\s*匹配括号前的任意空白字符,确保彻底移除行业名称与括号之间的空格干扰

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.19 00:01:39