当前位置: 首页 > 图文教程 > 网络编程 > ASP > ASP UTF-8编码下字符串截取和获取长度函数

ASP
isNull(str), isEmpty(str)和 str = 的区别
使用ADO批量更新记录(源代码)
自己动手,结合javascript和dhtml做一个ubb编辑器
检查Email地址的比较完善的正则表达式函数
从Access数据库恢复BMP图像并显示在WEB页面(microsoft)
ASP环境下邮件列表功能的实现 (四)(推荐)
在ASP应用中如何限制同一表单被多次提交!!!!好东西
了解MSMQ,控制ASP进程 (一)
了解MSMQ,控制ASP进程 (二)
ASP技术在论坛中的运用(一)(吐血推荐!!!!)
ASP技术在论坛中的运用(二)(吐血推荐!!!!)
ASP技术在论坛中的运用(三)(吐血推荐!!!!)
ASP技术在论坛中的运用(四)(吐血推荐!!!!)
ASP技术在论坛中的运用(五)(吐血推荐!!!!)
ASP技术在论坛中的运用(六)(吐血推荐!!!!)
ASP技术在论坛中的运用(七)(吐血推荐!!!!)
ASP技术在论坛中的运用(八)(吐血推荐!!!!)
不用数据源打开数据库(DSNless connection)
大部分的ADO的错误码对应的含义
好东西,翻页程序,大家可以参考

ASP UTF-8编码下字符串截取和获取长度函数


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

截取文字长度函数,支持UTF-8 ,这样就可以满意大部分截取字符串的朋友了。
复制代码 代码如下:

'************************************
'截取文字长度函数,支持UTF-8
'输入参数:
' 1、文字内容
' 2、文字最大长度
'************************************
Public Function Cut_Title(Title,TLen)
Dim k,i,d,c
Dim iStr
Dim ForTotal
If CDbl(TLen) > 0 Then
k=0
d=StrLen(Title)
iStr=""
ForTotal = Len(Title)
For i=1 To ForTotal
c=Abs(AscW(Mid(Title,i,1)))
If c>255 Then
k=k+2
Else
k=k+1
End If
iStr=iStr&Mid(Title,i,1)
If CLng(k)>CLng(TLen) Then
iStr=iStr".."
Exit For
End If
Next
Cut_Title=iStr
Else
Cut_Title=""
End If
End Function
'*******************************
'检测文字长度函数,支持UTF-8
'输入参数:
' 1、文字内容
'*******************************
Public Function StrLen(strText)
Dim k,i,c
Dim ForTotal
k=0
ForTotal = Len(strText)
For i=1 To ForTotal
c=Abs(AscW(Mid(strText,i,1)))
If c>255 Then
k=k+2
Else
k=k+1
End If
Next
StrLen=k
End Function