从TEXT中提取2个列范围;插入逗号分隔;另存为CSV

时间:2013-11-01 21:54:33

标签: powershell

我有一个没有分隔符的.txt文件。我想从文件中提取2个列范围,并用逗号分隔符分隔它们。然后我想将结果数据保存为CSV。

例如,这是一个'原始'字符串:

abcdefghij

我希望脚本将其转换为:

abc,h

我知道GC / SC;我只需要知道如何进行字符串操作。

3 个答案:

答案 0 :(得分:1)

假设您的列由开始和结束索引分隔,您可以执行以下操作:

get-content raw.txt | %{ "$($_[$0..2] -join ''),$($_[7..7]  -join '')"}

答案 1 :(得分:1)

使用-replace运算符:

$text = 'abcdefghij'
$text -replace '(.{3}).{4}(.).+','$1,$2'

abc,h

答案 2 :(得分:0)

哦,小伙子,这看起来很有趣。

怎么样:

"abcdefghij" | %{$_.Remove(3), $_[7] -join ","}

我认为查看您尝试从中提取的实际数据会更有帮助。有许多方法可以进行字符串操作,您的选择将在很大程度上取决于您尝试提取的内容。