ASP NET - Funções para URLs

UrlDecode

Esta funcionalidade remove os caracteres codificados e coloca os caracteres acentuados em seu lugar.

Public Class URL
    Inherits System.Web.UI.Page

    Function URLDecode(sConvert As String) As String
        Dim valor As String
        valor = Replace(sConvert, "+", " ")
        valor = Replace(valor, "%E1", "á")
        valor = Replace(valor, "%E3", "ã")
        valor = Replace(valor, "%E9", "é")
        valor = Replace(valor, "%ED", "í")
        valor = Replace(valor, "%FA", "ú")
        valor = Replace(valor, "%E7", "ç")
        valor = Replace(valor, "%C2", "Â")
        valor = Replace(valor, "%C1", "Á")
        valor = Replace(valor, "%F4", "ô")
        valor = Replace(valor, "%F3", "ó")
        valor = Replace(valor, "%EA", "ê")
        valor = Replace(valor, "%27", "´")
        valor = Replace(valor, "%28", "(")
        valor = Replace(valor, "%29", ")")

        Return valor
    End Function


URL Amigável

Troca os caracteres acentuados em português para não acentuados evitando perdas de dados em sites que não utilizam a codificação UTF-8.

    Function urlAmigavel(str)
        'Função responsável por montar URLs amigáveis, retirando acentuação e substituindo espaços

        Dim strComAcento As String
        Dim strSemAcento As String
        Dim strResultado As String
        Dim strLetra As String
        Dim strPos_Acento As String
        Dim x As Integer

        strComAcento = "àáâãäèéêëìíîïòóôõöùúûüÀÁÂÃÄÈÉÊËÌÍÎÒÓÔÕÖÙÚÛÜçÇñÑ,.;/?:><]}[{ºª=-+_)(*&¨%$#@!" & Chr(34)
        strSemAcento = "aaaaaeeeeiiiiooooouuuuAAAAAEEEEIIIOOOOOUUUUcCnN" 'O que estiver na mesma posicao da esquerda para direita troca, se nao houver equivalente remove
        strResultado = "" 'Starta variavel

        If str <> "" Then
            For x = 1 To Len(str)
                strLetra = Mid(str, x, 1)
                strPos_Acento = InStr(strComAcento, strLetra) 'InStr - Devolve a posição da primeira ocorrência de uma string dentro de outra.
                If strPos_Acento > 0 Then strLetra = Mid(strSemAcento, strPos_Acento, 1)
                strResultado = strResultado & strLetra
            Next
            urlAmigavel = Replace(LCase(Trim(LTrim(strResultado))), " ", "-") 'Tira os espaços e troca os intermediários por hifen
        End If
        Return ""
    End Function


Remove tags HTML

    ''' <summary>
    '''    Retira as tags HTML de strHTML
    ''' </summary>
    ''' <param name="strHTML"></param>
    ''' <returns></returns>
    Function RetiraHTML(strHTML As String)
        Dim strOutput As String

        'objRegExp.Pattern = "<(.|\n)+?>"
        'objRegExp.IgnoreCase = True
        'objRegExp.Global = True
        '        RegexOptions.IgnorePatternWhitespace
        Dim objRegExp As New Regex("<(.|\n)+?>", RegexOptions.IgnoreCase) 'objRegExp.Pattern
        'Dim re As Regex = New Regex(pattern, RegexOptions.IgnoreCase | RegexOptions.IgnorePatternWhitespace)

        'Substituir tag HTML com a string vazia
        strOutput = objRegExp.Replace(strHTML, "")
        ' Substituir todos os < e > com < e >
        strOutput = Replace(strOutput, " ", " ")
        strOutput = Replace(strOutput, "<", "<")
        strOutput = Replace(strOutput, ">", ">")
        Return strOutput 'Retorna o valor de strOutput Set objRegExp = NothingEnd Function
    End Function


End Class