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

如何在SQL中使用正则提取包含ed结尾单词的整行配料内容?

正则表达式及SQL实现方案

正则表达式核心逻辑

要匹配包含至少一个以ed结尾的英文单词的整行数据,核心正则写法为:
\b[a-zA-Z]+ed\b

规则说明

  • \b:匹配单词边界,保证ed是单词的结尾,不会误匹配单词中间含ed的情况(比如不会把address里的ed当成匹配项)
  • [a-zA-Z]+:匹配ed前至少1个英文字母
  • 匹配时需开启不区分大小写配置,兼容首字母大写的单词(比如示例中的Flamed)

不同SQL方言的实现代码

MySQL

SELECT ingredients
FROM 替换为你的表名
WHERE ingredients REGEXP '\\b[a-zA-Z]+ed\\b';

注:MySQL中反斜杠需要转义,因此单词边界写为\\b,默认匹配不区分大小写。

PostgreSQL

SELECT ingredients
FROM 替换为你的表名
WHERE ingredients ~* '\b[a-zA-Z]+ed\b';

注:~* 代表不区分大小写的正则匹配。

SQL Server(2017及以上版本)

SELECT ingredients
FROM 替换为你的表名
WHERE REGEXP_MATCH(ingredients, '\b[a-zA-Z]+ed\b', 'i') IS NOT NULL;

注:第三个参数i指定不区分大小写匹配。

匹配结果验证

针对你提供的示例数据,执行上述语句后会返回以下符合要求的结果:

Cabin Fever maple flavored whiskey
Flamed orange peel
Cola Candied ginger

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.27 10:24:02