ASP如何计算中英文混合字符串长度和截取字符串
用ASP做网站的时候经常会碰到要截取字符串的情况。ASP中的Len函数不管是中文字符,还是英文字符,统统按一个单位来计算,由于一个中文字符的宽度是一个英文字符宽度的两倍,在中英文混合的情况下字符串实际占用的宽度就不好计算了,如果按照Len函数计算的长度来截取字符串截出来的效果也会长短不一,下面是按照一个汉字相当于两个英文字符来计算字符串长度和截取字符串的代码
计算中英文混合字符串的长度:
function getStringLen(str)
on error resume next
dim l,c,i,t
l=len(str)
t=l
for i=1 to l
c=asc(mid(str,i,1))
if c>=128 or c<0 then t=t+1
next
getStringLen=t
if err.number<>0 then err.clear
end function
截取字符串:
function getSubString(str,Length)
on error resume next
dim l,c,i,hz,en
l=len(str)
if l<length then
getSubString=str
else
hz=0
en=0
for i=1 to l
c=asc(mid(str,i,1))
if c>=128 or c<0 then
hz=hz+1
else
en=en+1
end if
if en\2+hz>=length then
exit for
end if
next
getSubString=left(str,i) & "…"
end if
if err.number<>0 then err.clear
end function
相关文档:
Set xlApp = CreateObject("Excel.Application")
xlApp.DisplayAlerts = false '不显示警告
'xlApp.Application = false ......
'-------------------------------------------------------------------------------------------------------1.asp
<!--#include file="function.asp" -->
<%if Request.Cookies("venshop")("user_name")<>"" then%>
<script>
function checkAll(){
for (i=0;i&l ......
<%
Function Zodiac(birth)
If IsDate(birth) Then
birthyear = Year(birthday)
ZodiacList = Array("猴", "鸡", "狗", "猪", "鼠", "牛", "虎", "兔", "龙", "蛇", "马", "羊")&nbs ......
1 前言
2 简述三层架构
3 建立站点的大体结构
3.1 代码目录
3.2 首 ......
在多项选择的一些应用中,可以用二进制1代表选中,0代表不选。例如给某用户角色分配权限abcdefg,选中情况是1001101,那么此角色包含四项权限,用一个变量表示,相应的十进制数是77。
但是,在ASP中的多项选择,就不适合这种以数值的形式记录选中情况。因为,当项目数很多时(例如6 ......