当前位置: 首页 > 图文教程 > 网络编程 > ASP > ASP技巧:让Len,Left,Right函数识别中文

ASP
自动清空站点目录下所有文件
ASPEMAIL通过Mdaemon的SMTP发信-recipient unknow处理办法
使用split分割多字符的字符串的方法
ASP调用oracle存储过程
ASP访问INTERBASE数据库
利用Session限制重复操作的简单方法
一个socket组件及其调用方法
ASP模仿asp.net的DataGrid
利用ASP技术实现文件直接上传功能
微软建议的ASP性能优化28条守则
温柔的杀手—跨站ASP Script攻击
aspjpeg组件高级使用方法介绍
asp+sqlserver 分页方法(不用存储过程)
Windows 2003上传文件不能超过200k解决方法
一个比较实用的asp函数集合类
WebClasses使注册变得容易
ASP对FoxPro自由表(DBF文件)的操作
HTTP_REFERER的工作方式
抓取动网论坛Email地址的一段代码
ASP+FSO+框架实现ASP生成htm并分页的方法(批量)

ASP技巧:让Len,Left,Right函数识别中文


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-28   浏览: 205 ::
收藏到网摘: n/a

ASP函数:支持中文的Len, Left, Right

'------------------------------------------------------------
'描述:让Len,Left,Right函数识别中文
' 对中文识别为两个字符,ASCII码为一个
' 可用此函数代替Len,Left,Right函数
'示例:LenX("中国ren") => "7"
' LeftX("中国ren",4) => "中国"
' RightX("中国ren",5) => "国ren"
'参数:
' sString 字符串
' lLength 长度
'返回:字符串长度,字符串,字符串
'整理:KimSoft([email protected])
'时间:2005-05-24
'修改:2005-07-07
'------------------------------------------------------------
Public Function LenX(ByVal sString)
Dim reslult, lngStringLen, strCharString, i
lngStringLen = Len(sString)
strCharString = ""

for i = 1 to lngStringLen
strCharString = Mid(sString, i, 1)
if Asc(strCharString) > 0 then reslult= reslult+ 1 else reslult= reslult+ 2
next
LenX= reslult
End Function

Public Function strLeft(ByVal sString, ByVal lLength)
if isBlank(sString) or lLength < 1 then Exit Function
Dim result, lngStringLength, strCharString, lngCounter ,i
lngStringLength = Len(sString)

result = ""
for i = 1 to lngStringLength
strCharString = Mid(sString, i, 1)
result = result & strCharString
if Asc(strCharString) > 0 then lngCounter = lngCounter + 1 else lngCounter = lngCounter + 2
if lngCounter >= lLength then Exit For
next
strLeft = result
End Function

Public Function strRight(ByVal sString, ByVal lLength)
if isBlank(sString) or lLength < 1 then Exit Function
Dim result, lngStringLength, strCharString, lngCounter, i
lngStringLength = Len(sString)

result = ""
for i = lngStringLength to 1 step -1
strCharString = Mid(sString, i, 1)
result = strCharString & result
if Asc(strCharString) > 0 then lngCounter = lngCounter + 1 else lngCounter = lngCounter + 2
if lngCounter >= lLength then Exit For
next
strRight = result
End Function