有许多站点(例如Stackoverflow)在URL中具有页面标题。 我正在寻找他们使用的算法,以避免非法的URL字符。 (我不想要URL编码,我想要替换/删除算法)
喜欢'非法字符的URL如何工作?'将成为'How-is-Illegal-chars-URL-working'
谢谢!
答案 0 :(得分:2)
执行此操作的算法通常称为“slugify”,因为它将字符串转换为要在URL中使用的“slug”。搜索它应该为您提供大量有用的实现。
答案 1 :(得分:1)
不知道SO是如何做到的,但我会剥离每个非字母数字字符并用下划线替换空格。
在Python中:
def cleanTitle(title):
temp = ''
for character in title.lower():
if character in 'abcdefghijklmnopqrstuvwxyz1234567890_-+/<>,.=[]{}()\|!@#$%^&':
temp += character
return temp
我看到你在使用C#。我不知道C#,所以你必须翻译这段代码。我怀疑这很难做到。