【发布时间】:2019-04-09 17:39:56
【问题描述】:
我originally 询问了我需要删除空格并用管道分隔符替换为 13 个空格的问题。我现在有一个不同的文件,其中包含 1 行非常长的文本,我需要在其中插入管道“|”每 39 个字符后的分隔符。我正在尝试使用的文本示例:
000/042 BS CALIFORNIA 90001000/042 BS CALIFORNIA 90002000/042 BS CALIFORNIA 90003000/042 BS CALIFORNIA 90004000/042 BS CALIFORNIA
我打算编写一个可以执行此操作的批处理文件,因为如果不使用 SSIS 和适当的分隔符对其进行预处理,我将无法将其加载到任何 sql 服务器。任何帮助表示赞赏。
编辑: 替换空格并使文件易于使用的代码如下:
Set Inp = wscript.Stdin
Set Outp = wscript.Stdout
Set regEx = New RegExp
regEx.Pattern = "\s{2,}"
regEx.IgnoreCase = True
regEx.Global = True
Outp.Write regEx.Replace(Inp.ReadAll, "|")
我不确定如何修改它,以便在每 39 个字符之后放置一个管道分隔符。
【问题讨论】:
-
奇怪的是,您无法将固定文本文件加载到数据库中。我的数据库团队每天都使用 SSIS 包为我做这件事。
-
谢谢壁球手。也许我对 SSIS 也有点无能。
标签: batch-file cmd vbscript ssis fixed-width