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

如何移除字符串开头单词并删除特定字符串后的所有内容

SQL字符串裁剪实现方案

你的需求是对目标字符串完成两步处理:移除开头第一个单词,截断保留到关键词sit为止的内容,最终输出ipsum dolor sit,以下是可直接落地的实现方式:

核心逻辑拆解

不管用哪种数据库方言,实现逻辑都可以拆成两个独立步骤,不需要复杂的自定义函数:

  • 定位字符串中第一个空格的位置,从空格后一位开始截取,直接移除开头的第一个单词
  • 在第一步处理后的结果中,定位关键词sit的结束位置,从字符串开头截取到该位置,丢弃后续所有内容

不同数据库的可运行代码

MySQL 5.x/8.x 通用写法

不需要依赖正则函数,低版本MySQL也能运行:

SELECT
  LEFT(
    -- 第一步:移除第一个单词
    SUBSTRING(full_str, LOCATE(' ', full_str) + 1),
    -- 第二步:截取到sit结尾
    LOCATE('sit', SUBSTRING(full_str, LOCATE(' ', full_str) + 1)) + 2
  ) AS target_result
FROM (
  -- 这里替换成你实际的表字段即可
  SELECT 'Lorem ipsum dolor sit amet consectetur adipisicing elit.' AS full_str
) AS temp;

如果是MySQL 8.0及以上版本,支持正则函数,可以用更简洁的写法:

SELECT REGEXP_REPLACE(
  'Lorem ipsum dolor sit amet consectetur adipisicing elit.',
  '^\\w+\\s|(?<=sit).*',
  ''
) AS target_result;

PostgreSQL 写法

SELECT
  SUBSTRING(
    SUBSTRING(full_str FROM POSITION(' ' IN full_str) + 1)
    FROM '^.*sit'
  ) AS target_result
FROM (
  SELECT 'Lorem ipsum dolor sit amet consectetur adipisicing elit.' AS full_str
) AS temp;

注意事项

如果你的文本中sit可能作为其他单词的子串(比如situation、site),可以把匹配目标调整为带前后空格的sit,匹配后再做首尾空格处理,避免出现误截断的问题。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.29 11:15:17