Avatar billede carpediem Nybegynder
09. maj 2003 - 23:18 Der er 3 kommentarer og
1 løsning

regular expression funktion

Hejsa

Jeg har tidligere brugt denne funktion i ASP, men nu vil jeg gerne have lavet den om til ASP.NET
Er der en der kan hjælpe mig med det?

    Function FormatText(ByVal strInput)
        strInput = Replace(strInput, "<BR>", vbCrLf)

        '    Konverter HTML-tags
        '    str = Server.HTMLEncode(str)

        arrPattern = Array("([\w\._-]+@[\w\._-]+\.[A-Za-z]{2,4}\S*)", _
        "(http|https|ftp)(:\/\/[\w\._-]+\.[\w\._-]+\S*)", _
        "(^|[^\/])(www[^\.\s]?\.[\w\._-]+\.[A-Za-z]{2,4}\S*)")

        arrReplaceString = Array(" <a href=""mailto:$1"" CLASS=""Link"">$1</a> ", _
        " <a href=""$1$2"" target=""_blank"" CLASS=""Link"">$1$2</a> ", _
        " <a href=""http://$2"" target=""_blank"" CLASS=""Link"">$2</a> ")

        Rx = New RegExp()
        Rx.Global = True
        Rx.IgnoreCase = True

        For intIndex = 0 To UBound(arrPattern)
            Rx.Pattern = arrPattern(intIndex)
            strInput = Rx.Replace(strInput, arrReplaceString(intIndex))
        Next

        Rx = Nothing

        '    Lav enkelt linieskift
        strInput = Replace(strInput, vbcrlf, "<BR>")

        FormatText = strInput
    End Function
Avatar billede somaliomar Praktikant
16. maj 2003 - 15:22 #1
Det næsten på samme måde som i classic ASP:

    Private Function FormatText(ByVal input As String) As String
        Dim r As Regex
        Dim i As Integer

        Dim arrPatterns() As String = _
            {"([\w\._-]+@[\w\._-]+\.[A-Za-z]{2,4}\S*)", _
            "(http|https|ftp)(:\/\/[\w\._-]+\.[\w\._-]+\S*)", _
            "(^|[^\/])(www[^\.\s]?\.[\w\._-]+\.[A-Za-z]{2,4}\S*)"}

        Dim arrReplaces() As String = _
            {" <a href='mailto:$1' CLASS='Link'>$1</a> ", _
            " <a href='$1$2' target='_blank' CLASS='Link'>$1$2</a> ", _
            " <a href='http://$2' target='_blank' CLASS='Link'>$2</a> "}

        input = Replace(input, vbCrLf, "<BR>")

        For i = 0 To UBound(arrPatterns)
            input = r.Replace(input, arrPatterns(i), arrReplaces(i))
        Next

        input = Replace(input, vbCrLf, "<BR>")

        Return input
    End Function
Avatar billede carpediem Nybegynder
19. maj 2003 - 11:25 #2
Hov, havde ikke lige set, at der var kommet et svar. Derfor ingen respons.
Jeg kigger på det lidt senere i dag. Men foreløbig tak for hjælpen.
Avatar billede carpediem Nybegynder
19. maj 2003 - 12:54 #3
Det virkede jo perfekt - tak.
Avatar billede somaliomar Praktikant
19. maj 2003 - 14:35 #4
Tak for points !
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester