Санитарная обработка неанглийских букв для безопасного использования в URL - PullRequest
2 голосов
/ 18 августа 2011

Как лучше всего в .NET создавать безопасные URL-адреса из заголовков сообщений? Например, у меня может быть сообщение «test with non enğlİşh çharaçters», и я хочу превратить его в безопасную форму URL, сохраняя при этом цель читабельности заголовка, являющегося URL, например «test-with-non-english-». символы ", и я буду использовать их как http://mysite/blog/5/test-with-non-english-characters Я могу просто перебрать строковые символы и либо оставить ВСЕ буквы, как они есть (небезопасно для использования в URL), либо уничтожить все неанглийские символы и включить их в подчеркивание и т. д. (нарушает цель удобочитаемости, поскольку сообщения будут / могут быть не на английском языке). Я уверен, что есть способ преобразования ş в s и Ğ в G и т. Д., Как в поисковом запросе без учета акцента в SQL-сервере.

1 Ответ

2 голосов
/ 18 августа 2011

См. мой ответ на другой вопрос об удалении ударений в строке.

Обратите внимание, что это не полностью решает проблему.Например, азиатские идеограммы или нелатинские буквы не будут транслитерированы на английские (латинские) буквы с использованием этого кода.

...