【发布时间】:2011-03-06 04:26:47
【问题描述】:
快速检查是否有人拥有或知道能够从给定的 nvarchar 输入生成 slug 的 T-SQL 函数。即;
“你好世界”>“你好世界”
“这是一个测试”>“这是一个测试”
我有一个通常用于这些目的的 C# 函数,但在这种情况下,我有大量数据要解析并转换为 slug,因此在 SQL Server 上执行此操作更有意义,而不是必须通过网络传输数据。
顺便说一句,我没有远程桌面访问权限,因此我无法针对它运行代码(.net、Powershell 等)
提前致谢。
编辑: 根据要求,这是我通常用来生成 slug 的函数:
public static string GenerateSlug(string n, int maxLength)
{
string s = n.ToLower();
s = Regex.Replace(s, @"[^a-z0-9s-]", "");
s = Regex.Replace(s, @"[s-]+", " ").Trim();
s = s.Substring(0, s.Length <= maxLength ? s.Length : maxLength).Trim();
s = Regex.Replace(s, @"s", "-");
return s;
}
【问题讨论】:
-
你能发布你的 C# slug-generator 函数吗?