嘿所有,我试图用一个文本替换文本之间的大空格。我的输出现在看起来像这样:
5964215">
This is just the first example of the spaces
5964478">
This would be the 2nd example of showing how many spaces this thing has in each sentence.
5964494">
来自具有多行到true的文本框。这是当它没有多行真实时的样子。
http://www.june3rdsoftware.com/forums/vb6.jpg
我似乎无法让空间消失!顺便说一句,如果这有任何不同,这个文本来自网页。
大卫
答案 0 :(得分:6)
根据MvanGeest的建议,这里有一些VB代码来替换空格块:
Sub test()
Dim x As String, y As String
x = "abcd defg 1233"
Dim re As New RegExp
re.Pattern = "\s+"
re.Global = True
y = re.Replace(x, " ")
Debug.Print y
End Sub
要使其工作,您必须在项目中添加对“Microsoft VBScript Regular Expresssions”的引用。
答案 1 :(得分:0)
假设没有正则表达式支持,为什么不设置一个简单的状态机,在找到空格时设置state = 1,并在遇到非空格时设置state = 0。当state = 0时,您可以通过char移动char(因此每个系列空间只复制1个空格)。
答案 2 :(得分:0)
另外假设没有正则表达式,你可以尝试像
这样的东西str =“带空格的长文本”
i = LenB(str)
str =替换(str,“”,“”)
同时LenB(str)<>我
i = LenB(str)
str =替换(str,“”,“”)
循环
当然,这段代码可以针对长空间序列进行优化,但也可能是你需要的所有