加入收藏 | 设为首页 | 会员中心 | 我要投稿 聊城站长网 (https://www.0635zz.com/)- 智能语音交互、行业智能、AI应用、云计算、5G!
当前位置: 首页 > 站长学院 > Asp教程 > 正文

asp 字符串截取函数分享

发布时间:2023-05-22 14:09:37 所属栏目:Asp教程 来源:
导读:asp 字符串截取函数

'*********************************************************

'函数:cutStr[str(strlen)]

'参数:str,待处理的字符串,strlen,截取的长度

'作者:木木

&
asp 字符串截取函数
 
'*********************************************************
 
'函数:cutStr[str(strlen)]
 
'参数:str,待处理的字符串,strlen,截取的长度
 
'作者:木木
 
'日期:2007/7/12
 
'描述:截取指定长度的字符串
 
'示例:<%=cutStr("欢迎光临阿里西西",5)%>
 
'*********************************************************
 
function cutStr(str,strlen)
 
If str = "" Then
 
cutStr = "cutStr函数异常:字符串为空"
 
exit function
 
End If
 
'------------来源长度检查
 
If strlen = "" Then
 
cutStr = "cutStr函数异常:长度未指定"
 
exit function
 
End If
 
If CInt(strlen) = 0 Then
 
cutStr = "cutStr函数异常:长度为0"
 
exit function
 
End If
 
'----------检测来源字符长度
 
dim l,t,c,i
 
l=len(str)
 
t=0
 
'----------循环截取字符
 
for i=1 to l
 
c=Abs(Asc(Mid(str,i,1)))
 
'------判断是否汉字
 
if c>255 then
 
t=t+2
 
else
 
t=t+1
 
end If
 
'------判断是否到达指定长度
 
if t>=strlen then
 
cutStr=left(str,i)&".."
 
exit for
 
else
 
cutStr=str
 
end if
 
next
 
cutStr=replace(cutStr,chr(10),"")
 
end function
 
''*********************************************************
 
'函数:strlen[str]
 
'参数:str,待处理的字符串
 
'作者:木木
 
'日期:2007/7/12
 
'描述:判断字符串长度,汉字长度为2
 
'示例:<%=strlen("欢迎光临阿里西西")%>
 
'*********************************************************
 
Function strlen(str)
 
dim p_len
 
p_len=0
 
strlen=0
 
if trim(str)<>"" then
 
p_len=len(trim(str))
 
for xx=1 to p_len
 
if asc(mid(str,xx,1))<0 then
 
strlen=int(strlen) + 2
 
else
 
strlen=int(strlen) + 1
 
end if
 
next
 
end if
 
End Function
 
截取左边的n个字符'*********************************************************
 
'函数:LeftTrue(str,n)
 
'参数:str,待处理的字符串,n,截取的长度
 
'作者:木木
 
'日期:2007/7/12
 
'描述:显示左边的n个字符(自动识别汉字)函数
 
'示例:<%=LeftTrue("欢迎光临阿里西西",6)%>
 
'*********************************************************
 
Function LeftTrue(str,n)
 
If len(str)<=n/2 Then
 
LeftTrue=str
 
Else
 
Dim TStr
 
Dim l,t,c
 
Dim i
 
l=len(str)
 
t=l
 
TStr=""
 
t=0
 
for i=1 to l
 
c=asc(mid(str,i,1))
 
If c<0 then c=c+65536
 
If c>255 then
 
t=t+2
 
Else
 
t=t+1
 
End If
 
If t>n Then exit for
 
TStr=TStr&(mid(str,i,1))
 
next
 
LeftTrue = TStr
 
End If
 
End Function
 
 

(编辑:聊城站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章