如何对以<code>/</code>为分隔符的字符串切片并提取首个分段
以
/为分隔符提取首个分隔符前内容的实现方案 以下是不同常用场景下的实现方法:
Python 实现
直接使用split方法,指定最大分割次数为1避免无意义的多余分割:
# 单个字符串处理 demo_str = "x/pp/llllll" res = demo_str.split("/", maxsplit=1)[0] # 输出结果为 x
如果是批量处理DataFrame表格数据,可使用如下代码:
import pandas as pd # 构造示例数据 df = pd.DataFrame({ "id": ["01", "02", "03"], "column1": ["x/pp/llllll", "lll/k/uu/llll/nbbbb", "zzzzzz/wwww/s/aa"] }) # 提取首个/之前的内容 df["column1"] = df["column1"].str.split("/", n=1).str[0]
SQL 实现
不同数据库的内置函数略有差异,常用数据库实现如下:
- MySQL 场景:使用
SUBSTRING_INDEX函数
SELECT id, SUBSTRING_INDEX(column1, '/', 1) AS column1 FROM 你的表名;
- PostgreSQL 场景:使用
split_part函数
SELECT id, split_part(column1, '/', 1) AS column1 FROM 你的表名;
Excel 实现
使用LEFT和FIND组合函数即可批量处理,假设待处理内容存放在B2单元格,公式如下:=LEFT(B2,FIND("/",B2)-1)
输入完成后下拉填充即可批量处理整列数据。
Shell 实现
如果是处理本地文本文件,可直接使用cut命令:cut -d'/' -f1 待处理文件名
内容的提问来源于stack exchange,提问作者Carlo Parodi
相关产品推荐
相关产品推荐

