2009-07-27 51 views
2

我想創建一個簡單的方法來將一個名稱(名字,姓氏,中間名首字母)轉換爲一個公共的URL友好的ID(如Stackoverflow與問題標題)。現在人們可以輸入各種瘋狂的角色,元音變音等等,.NET中是否有東西可以用來將它標準化爲URL可接受的/英文字符,還是我需要編寫自己的方法來完成這個任務?生成公共「標識文本」(如Stackoverflow)

謝謝!

編輯:一個例子(例如通過RegEx或其他方式)將是超級有用的! :)

回答

0

一個正則表達式,用於驗證具有您希望允許的字符和長度的字符串。

0

認爲你必須寫自己的方法......字符

安全列表...

A到Z

關於C爲CHAR在安全列表 如果安全.. 。等 Next

1
使用 UrlEncode

顯然,你必須做一些事情來處理衝突(防止它們在用戶創建是合理的,但是這意味着你被綁定到這個結構)

s => Regex.Replace(HttpUtility.UrlEncode(s), "%..", "") 

這是

簡單方法依賴UrlEncode的輸出始終使用兩個字符編碼形式,並且您很高興將空間轉換爲'+'