ASP截取字符串问题

2024-12-25 19:40:09
推荐回答(4个)
回答1:

没必要这样做
css里面
text-overflow:ellipsis;
就可以了
len貌似对中文一个算两个吧
也许出了异常
'------------------------------------------------------------
'描述:让Len,Left,Right函数识别中文
' 对中文识别为两个字符,ASCII码为一个
' 可用此函数代替Len,Left,Right函数
'示例:LenX("中国ren") => "7"
' LeftX("中国ren",4) => "中国"
' RightX("中国ren",5) => "国ren"
'参数:
' sString 字符串
' lLength 长度
'返回:字符串长度,字符串,字符串
'整理:KimSoft(jinqinghua@gmail.com)
'时间:2005-05-24
'修改:2005-07-07
'------------------------------------------------------------
Public Function LenX(ByVal sString)
LenX = 0

Dim lngStringLen
Dim strCharString
Dim i

lngStringLen = Len(sString)
strCharString = ""

For i = 1 To lngStringLen
strCharString = Mid(sString, i, 1)
If Asc(strCharString) > 0 Then
LenX = LenX + 1
Else
LenX = LenX + 2
End If
Next
End Function

Public Function LeftX(ByVal sString, ByVal lLength)

LeftX = ""

If sString = "" Or lLength < 1 Then Exit Function

Dim lngStringLength
Dim strCharString
Dim lngCounter
Dim i

lngStringLength = Len(sString)

For i = 1 To lngStringLength
strCharString = Mid(sString, i, 1)
LeftX = LeftX & strCharString
If Asc(strCharString) > 0 Then
lngCounter = lngCounter + 1
Else
lngCounter = lngCounter + 2
End If
If lngCounter >= lLength Then Exit For
Next

End Function

Public Function RightX(ByVal sString, ByVal lLength)

RightX = ""

If sString = "" Or lLength < 1 Then Exit Function

Dim lngStringLength
Dim strCharString
Dim lngCounter
Dim i

lngStringLength = Len(sString)

For i = lngStringLength To 1 Step -1
strCharString = Mid(sString, i, 1)
RightX = strCharString & RightX
If Asc(strCharString) > 0 Then
lngCounter = lngCounter + 1
Else
lngCounter = lngCounter + 2
End If
If lngCounter >= lLength Then Exit For
Next

End Function

回答2:

获取
最后一个"."的下标,然后截取那个下标后面的就OK.
函数不大记得了,好像是
LastIndexOf();
SubString();

回答3:

如果长度大于20就从左起截取19个字符再接上......否则直接显示全部

看了这个没有错...

错在Recordset1.Fields.Item("newscontent").Value,,你最好检查这个有没有值过来.或者是什么值....

回答4:

Recordset1.Fields.Item("newscontent").Value换成:rs("newscontent")
的写法试下。应该与你的数据集相关。