对一个字符串进行提取,获取其中字母部分,方法如下:
IF OBJECT_ID('DBO.GET_ENSTR') IS NOT NULL
DROP FUNCTION dbo.GET_ENSTR;
GO
CREATE FUNCTION dbo.GET_ENSTR (@S VARCHAR(100))
RETURNS VARCHAR(100)
AS
BEGIN
WHILE PATINDEX('%[^a-z]%', @S) > 0
BEGIN
SET @S = STUFF(@S, PATINDEX('%[^a-z]%', @S), 1, '');
END;
RETURN @S;
END;
GO
测试语句:
SELECT DBO.GET_ENSTR('123abc哈哈ACE呼呼')
结果如下: