首页 > 解决方案 > 在字符串中拆分子字符串

问题描述

我有电子邮件记录,其中包括诸如“nr”之类的字符和一些带有它的数字,例如 examplenr@example.comnr122342 这里第一个 nr 没问题,但是在 .com 之后我想摆脱这个 'nr122342' 部分。我想使用 SQL 查询来摆脱这种情况,只获取原始电子邮件地址。请使用适当的 SQL 命令提供建议。

标签: sqlregexpresto

解决方案


您可以尝试以下操作:

   CREATE FUNCTION dbo.StringBeforeLastIndex(@source nvarchar(80), @pattern char)
   RETURNS nvarchar(80)
   BEGIN  
         DECLARE @lastIndex int
         SET @lastIndex = (LEN(@source)) -  CHARINDEX(@pattern, REVERSE(@source)) 

       RETURN SUBSTRING(@source, 0, @lastindex + 1) 

  END;  
  GO

推荐阅读