首页 > 解决方案 > “创建sql函数,选择英文字符?”

问题描述

我正在寻找一个只选择英文数字和字母的功能:

例子:

TEKA תנור ביל דין in HLB-840 P-WH לבן

我想运行一个函数并得到以下结果:

TEKA HLB-840 P-WH

我正在使用 MS SQL Server 2012

标签: sql-servertsql

解决方案


您真正需要的是正则表达式替换,SQL Server 不支持。从广义上讲,您会想要查找[^A-Za-z0-9 -]+\s*然后用空字符串替换。这是一个演示,表明它按预期工作:

演示

这将为TEKA in HLB-840 P-WH您提供的输入输出。您可以使用正则表达式包或 UDF 在 SQL Server 中执行此操作。或者,您可以使用任何数量的支持正则表达式的工具(例如 C#)在 SQL 之外进行此替换。


推荐阅读