问题来自:
获取字符串结尾的电话号码(案例)

 

以下是Insus.NET的解决方法,仅是截取字符串结尾的电话号码即可,写一个简的自定义函数:

获取字符串结尾的电话号码(案例)

 

SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO

-- =============================================
-- Author:      Insus.NET
-- Blog:        https://insus.cnblogs.com
-- Create date: 2019-06-21
-- Update date: 2019-06-21
-- Description: 获取字符串结尾的电话号码
-- =============================================
CREATE FUNCTION [dbo].[svf_CutterPhone] 
(
    @source NVARCHAR(4000)
) RETURNS NVARCHAR(4000)
AS
BEGIN
    DECLARE @L INT = LEN(RTRIM(@source))
    DECLARE @phone NVARCHAR(4000) = N''
    WHILE @L > 0
    BEGIN
        DECLARE @cutstr CHAR(1) = SUBSTRING(@source,@L,1)
        IF @cutstr LIKE '%[^-0-9]%'         
            BREAK;        
        ELSE        
            SET @phone = @cutstr + @phone    
        SET @L = @L - 1
    END
    RETURN @phone
END
Source Code

相关文章: