网络编程 
首页 > 网络编程 > 浏览文章

asp 字符串截取函数

(编辑:jimmy 日期: 2024/12/28 浏览:3 次 )
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


上一篇:asp下实现格式化文件大小以MB显示的函数
下一篇:asp实现图片右键滑轮控制大小的函数
一句话新闻
微软与英特尔等合作伙伴联合定义“AI PC”:键盘需配有Copilot物理按键
几个月来,英特尔、微软、AMD和其它厂商都在共同推动“AI PC”的想法,朝着更多的AI功能迈进。在近日,英特尔在台北举行的开发者活动中,也宣布了关于AI PC加速计划、新的PC开发者计划和独立硬件供应商计划。
在此次发布会上,英特尔还发布了全新的全新的酷睿Ultra Meteor Lake NUC开发套件,以及联合微软等合作伙伴联合定义“AI PC”的定义标准。