我想創建一個簡單的方法來將一個名稱(名字,姓氏,中間名首字母)轉換爲一個公共的URL友好的ID(如Stackoverflow與問題標題)。現在人們可以輸入各種瘋狂的角色,元音變音等等,.NET中是否有東西可以用來將它標準化爲URL可接受的/英文字符,還是我需要編寫自己的方法來完成這個任務?生成公共「標識文本」(如Stackoverflow)
謝謝!
編輯:一個例子(例如通過RegEx或其他方式)將是超級有用的! :)
我想創建一個簡單的方法來將一個名稱(名字,姓氏,中間名首字母)轉換爲一個公共的URL友好的ID(如Stackoverflow與問題標題)。現在人們可以輸入各種瘋狂的角色,元音變音等等,.NET中是否有東西可以用來將它標準化爲URL可接受的/英文字符,還是我需要編寫自己的方法來完成這個任務?生成公共「標識文本」(如Stackoverflow)
謝謝!
編輯:一個例子(例如通過RegEx或其他方式)將是超級有用的! :)
聽起來像你以後是一個Slug Generator!
一個正則表達式,用於驗證具有您希望允許的字符和長度的字符串。
認爲你必須寫自己的方法......字符
安全列表...
A到Z
關於C爲CHAR在安全列表 如果安全.. 。等 Next
顯然,你必須做一些事情來處理衝突(防止它們在用戶創建是合理的,但是這意味着你被綁定到這個結構)
s => Regex.Replace(HttpUtility.UrlEncode(s), "%..", "")
這是
簡單方法依賴UrlEncode的輸出始終使用兩個字符編碼形式,並且您很高興將空間轉換爲'+'
是的!尼斯鏈接謝謝你! – Alex 2009-07-27 14:01:14