带有空格和制表符的vbscript文件

时间:2013-07-23 01:20:34

标签: vbscript

有一个我要分开的文件并放入列中。看 就像文件中的某些字段由空格和其他标签分隔。我想格式化,所以名称和地址等在列中分开。

enter code here
strStarter = "RT 29 MONTPELIER VA 23100     23100"

intStarter = Len(strStarter)
For i = intStarter to 2 Step -1
strChars = Space(i)
strStarter = Replace(strStarter, strChars, " ")
 strStarter1 = Replace(strStarter, vbTab,  " " )
Next

arrStarter = Split(strStarter, " ")
arrStarter2= Split(strStarter1,vbTab)

 For Each strUnit in arrStarter
    Wscript.Echo strUnit
Next

2 个答案:

答案 0 :(得分:0)

认为您有一个制表符分隔的文件,可能在某些字段中包含空白序列。在那种情况下你应该

  1. 在vbTab上拆分以获取字段
  2. 规范化所有/部分字段中的空白
  3. 要标准化空格,可以使用Trim()作为前导/尾随空白,使用RegExp.Replace作为模式使用“+”或“+”作为替换。

    (看看here

答案 1 :(得分:0)

我为你制作了一个类似Ruby的分割函数,用于根据正则表达式模式分割字符串

'the following string contains a tab
strStarter = "RT 29 MONTPELIER BEFORETAB    AFTERTAB VA 23100     23100"

Function rsplit(string, pattern)
    Dim r
    Set r = New RegExp
    r.Global = True
    r.Pattern = "[^"&pattern&"]+"
    Set rsplit = r.Execute(string)
End Function

For each unit in rsplit(strStarter, " |\t") 
  wscript.echo unit
Next

给出

RT
29
MONTPELIER
BEFORETAB
AFTERTAB
VA
23100
23100