vb中如何去掉某个字符串最右边的换行符

有一个字符串aaa,最右边有一个换行符(vbCrLf),请问如何去掉?
字符串中间也有很多个vbCrLf,但是我只想把字符串最右边的几个vbCrLf去掉(个数不确定),请问怎么实现?

呵呵给你个好玩的思路..别人的程序都用了循环,如果字符串很大,或是最右边的换行符超多,可能循环次数就会比较多,我的不管有多长,只要5下就清空,代码如下:

Dim a$
a = "a a" & vbCrLf & "bb" & vbCrLf & "fdas" & vbCrLf & vbCrLf & vbCrLf

a = Replace(a, " ", "vb妮可")
a = Replace(a, vbCrLf, " ")
a = RTrim(a)
a = Replace(a, " ", vbCrLf)
a = Replace(a, "vb妮可", " ")

我的思路就是:
1.将原串中的空格都先替换成奇怪的短串,这样你的字符串中就没有空格了.
2.然后将所有的换行符都换成空格.
3.VB有一个删除右边空格的函数RTrim,可以把右边的空格都清除
4.没有删除的空格就是符合你要求的换行了,再替换回换行符
5.将奇怪的短串还原成空格
完成.
温馨提示:答案为网友推荐,仅供参考
第1个回答  2007-09-14
VB里有个字符串反转函数,具体名字想不起来了,可以把“ABCDE”转成“EDCBA”。INSTR也可以反过来用,好象是INSTRREV。
第2个回答  2007-09-14
Dim S : S=0
Do While Asc(Mid(Text1.text,Len(Text1.text)-S,1))=13
S=s+1
Text1.text=Left(Text1.text,Len(Text1.Text)-S)
Loop
第3个回答  2007-09-14
Private Sub Form_Load()
Dim a As String
Dim b As String
Dim i As Integer
Dim l As Integer

a = "aa" & vbCrLf & "bb" & vbCrLf & "fdas"

l = 1

Do While InStr(l, a, vbCrLf)
l = InStr(l, a, vbCrLf) + 1
i = i + 1
Loop

b = Left(a, l - 2) & Replace(a, vbCrLf, "", l - 1)

MsgBox b

End Sub
相似回答