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:
