关于作者

Function之全角与半角转换

上一篇 / 下一篇  2007-08-02 08:40:49 / 个人分类:asp源码

<%
Str = ",./<=>?!@#$%"
Response.Write "<br><br>半角=>全角:<br>" & vbCrLf
Response.Write "原字符串:" & Str & "<br>" & vbCrLf
Response.Write "新字符串:" & DBC2SBC(Str, 0) & "<br>" & vbCrLf

Str = ",./<=>?!@#¥%"
Response.Write "<br><br>全角=>半角:<br>" & vbCrLf
Response.Write "原字符串:" & Str & "<br>" & vbCrLf
Response.Write "新字符串:" & DBC2SBC(Str, 1) & "<br>" & vbCrLf
%>
<%
'****************************
'*  函数名:DBC2SBC
'*  用途:半角<=>全角
'*  str:要转换的字符串
'*  flag:标记,为0时半转全,为非0时全转半
'*  返回值类型:字符串
'****************************

Function DBC2SBC(Str, flag)
    Dim i, str1, str2
    If Len(Str)<= 0 Then
        MsgBox '字符串参数出错'
        Exit Function
    End If
    '****************************
    '*  如果是半角=>全角
    '****************************
    If flag = 0 Then
        For i = 1 To Len(Str)
            str1 = Mid(Str, i, 1)
            str2 = Asc(str1)
            If str2>0 And str2<= 125 Then
                dbc2sbc = dbc2sbc & Chr(str2 -23680)
            Else
                dbc2sbc = dbc2sbc & str1
            End If
        Next
        '****************************
        '*  如果是全角=>半角
        '****************************
    Else
        For i = 1 To Len(Str)
            str1 = Mid(Str, i, 1)
            str2 = Asc(str1)
            If (str2 + 23680>0) And (str2 + 23680<= 125) Then
                dbc2sbc = dbc2sbc & Chr(str2 + 23680)
            Else
                dbc2sbc = dbc2sbc & str1
            End If
        Next
    End If
End Function
%>


TAG:

 

评分:0

我来说两句

显示全部

:loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)