c# - 从帖子标题生成一个唯一的字符串,如 stackoverflow

标签 c# asp.net algorithm

如何从我的 C# 代码中的帖子标题生成唯一的字符串?类似于出现在这篇文章的 url 中的那个。

最佳答案

字符串不需要是唯一的,实际上:如果你检查这篇文章的 URL:

http://stackoverflow.com/questions/1467402/generate-a-unique-string-from-the-post-title-like-stackoverflow

“真正的”唯一部分是数字——这里是 1467402:它看起来像是数据库中问题的标识符;可能是某种自动递增/序列,由数据库服务器确保是唯一的。


实际上,您可以尝试自己检查“标题”部分是否重要:转到此 URL:

http://stackoverflow.com/questions/1467402/glop

即使“标题”部分显然不在此处,该 URL 也会让您转到这篇文章 ;-)


出现在 URL 中的“标题”有两个原因:

  • 当然是对用户更友好的 URL
  • 更多搜索引擎/更好的引用 URL

要生成它,需要做几件事:

  • 替换非ascii字符;例如,“é”很可能会被翻译成“e”
  • 将您不能很好地替换的其他字符替换为“-”作为单词分隔符。

关于c# - 从帖子标题生成一个唯一的字符串,如 stackoverflow,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1467402/

相关文章:

java - Hashtable 与 HashMap 中的哈希函数?

asp.net - Dapper.Contrib 方法不可用于 IDbConnection 对象

r - 从 R 中的 n 对中提取 k 不同元素的最快方法

c# - protobuf-net:无法序列化类型数据,如何使用 Protocol Buffer 定义类型数据?

c# - 如何测试接收类的 web api post 方法

c# - 指定的值包含无效的 HTTP header 字符

c# - ASP.NET Razor 页面下拉列表

algorithm - 为什么我不应该使用我的自定义加密算法?

c# - 处理 DataReceivedEventArgs 事件未触发

c# - 在 WPF 中使用触发器设置对象属性