使用SQL将非英语文本转换为英语文本

本文关键字:英语 文本 转换 SQL 使用 | 更新日期: 2023-09-27 18:02:19

我有文本规范化方法,我用它来将非英文字母转换为英文字母

我需要使用SQL server

做相同的功能
c#方法:

  private  string normalizeString(string inputWord)
        {
            StringBuilder stringBuilder = new StringBuilder();
            foreach (char c in inputWord.Trim().ToCharArray())
            {
                string normalizedChar = c.ToString()
                    .Normalize(NormalizationForm.FormD).Substring(0, 1);
                stringBuilder.Append(normalizedChar);
            }
            return stringBuilder.ToString();
        }

Ä => A
ä => a
Ö => O
ö => o
Õ => O
õ => o
Ü => U
ü => u

使用SQL将非英语文本转换为英语文本

如果你想删除变音符号,你可以使用Collate

例如:

select 'áéíóú' collate SQL_Latin1_General_Cp1251_CS_AS

这将返回"aeiou"

根据这个问题,SQL Server中没有这样的本地函数。你能做的就是为它创建一个CLR函数