SQL Server中提取字母

sqlnewleaner 2008-07-31 09:11:01
SQL Server中提取字母
...全文
124 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
jasonren 2008-07-31
  • 打赏
  • 举报
回复
IF OBJECT_ID('DBO.GET_STR') IS NOT NULL
DROP FUNCTION DBO.GET_STR
GO
CREATE FUNCTION DBO.GET_STR(@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
--测试
PRINT DBO.GET_STR('呵呵ABC123ABC')
GO
应该有很多例子.
lgxyz 2008-07-31
  • 打赏
  • 举报
回复
declare @a varchar(50)
set @a='2a p9 asdf1234ki 9'
while patindex('%[^a-z]%',@a)>0
begin
set @a=stuff(@a,patindex('%[^a-z]%',@a),1,'')
end
select @a
/*
--------------------------------------------------
apasdfki

(所影响的行数为 1 行)
*/
zhou968 2008-07-31
  • 打赏
  • 举报
回复
这种帖子很多,楼主先找找再提问啊
hery2002 2008-07-31
  • 打赏
  • 举报
回复
http://topic.csdn.net/u/20080713/00/77925c47-b7fa-4c1b-b307-0328e74a1c09.html?seed=1165773024
--------------------------------------------------------------------
--提取英文
IF OBJECT_ID('DBO.GET_STR') IS NOT NULL
DROP FUNCTION DBO.GET_STR
GO
CREATE FUNCTION DBO.GET_STR(@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
--测试
PRINT DBO.GET_STR('呵呵ABC123ABC')
GO
zhou968 2008-07-31
  • 打赏
  • 举报
回复

--提取英文
IF OBJECT_ID('DBO.GET_STR') IS NOT NULL
DROP FUNCTION DBO.GET_STR
GO
CREATE FUNCTION DBO.GET_STR(@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
--测试
PRINT DBO.GET_STR('sh教科kj的d恒fhh')
GO

chuifengde 2008-07-31
  • 打赏
  • 举报
回复
提什么字母

34,588

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧