如何从字符串中删除所有非字母字符?
非字母数字怎么样?
这必须是自定义函数还是还有更通用的解决方案?
最佳答案
试试这个功能:
Create Function [dbo].[RemoveNonAlphaCharacters](@Temp VarChar(1000))
Returns VarChar(1000)
AS
Begin
Declare @KeepValues as varchar(50)
Set @KeepValues = '%[^a-z]%'
While PatIndex(@KeepValues, @Temp) > 0
Set @Temp = Stuff(@Temp, PatIndex(@KeepValues, @Temp), 1, '')
Return @Temp
End
这样调用它:
Select dbo.RemoveNonAlphaCharacters('abc1234def5678ghi90jkl')
一旦理解了代码,您应该会发现更改它以删除其他字符也相对简单。您甚至可以使其足够动态以传递您的搜索模式。
关于sql-server - 如何从 SQL Server 中的字符串中删除所有非字母字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1007697/