65.9K
CodeProject 正在变化。 阅读更多。
Home

VBScript HTML 编码

starIconstarIcon
emptyStarIcon
starIcon
emptyStarIconemptyStarIcon

2.20/5 (4投票s)

2009年2月4日

CPOL
viewsIcon

78620

VBScript 的 Server.HTMLEncode (处理空字符串)

引言

这个函数是 Classic ASP 中 Server.HTMLEncode 方法的替代品,但有一个主要区别... 它接受 null 字符串,**不会**抛出错误!

副作用是为 VBScript 进行 HTML 编码。

背景

我编写这个函数是为了克服在 Classic ASP 中调用 Server.HTMLEncode 时经常遇到的 IsNullIsNothingIsEmpty string 噩梦。

Using the Code

Function HTMLEncode(ByVal sVal)

    sReturn = ""

    If ((TypeName(sVal)="String") And (Not IsNull(sVal)) And (sVal<>"")) Then
    
        For i = 1 To Len(sVal)
        
            ch = Mid(sVal, i, 1)

            Set oRE = New RegExp : oRE.Pattern = "[ a-zA-Z0-9]"

            If (Not oRE.Test(ch)) Then
                ch = "&#" & Asc(ch) & ";"
            End If

            sReturn = sReturn & ch
            
            Set oRE = Nothing
        Next
    End If
    
    HTMLEncode = sReturn
End Function
HTMLEncode("This is a & test!")

历史

  • 2009年2月4日:初始发布
© . All rights reserved.