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

Snowflake中如何删除字符串末尾数字段之后的任意可变字符

问题原因

你的正则逻辑已经能正确匹配到目标数字段(6位数字+横杠+5位数字)及之后的所有内容,但因为你将匹配到的整体内容替换成了空字符串,所以连带捕获到的目标数字段也被一同删除了。

解决方法

将替换值改为第一个捕获组的引用即可,仅保留匹配到的目标数字段,丢弃后续内容:

-- 适用于PostgreSQL、Oracle等数据库
SELECT REGEXP_REPLACE('22-ABCD-BC-220602-11484-TEST', '([0-9]{6}-[0-9]{5}).*$', '\1');

-- 若使用MySQL、SQL Server等数据库,捕获组引用改用$1即可
SELECT REGEXP_REPLACE('22-ABCD-BC-220602-11484-TEST', '([0-9]{6}-[0-9]{5}).*$', '$1');

执行后输出结果为22-ABCD-BC-220602-11484,完全符合需求。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.07 07:27:04