如何在PowerShell中将原始文本转换为CSV(逗号分隔值)?

我们有一个原始文本示例,并将其转换为CSV值,我们可以使用以下代码。

示例

PS C:\> $text = "This is a PowerShell latest version" PS C:\> $text.Replace(' ',',')

输出结果

This,is,a,PowerShell,latest,version

如果关键字之间有多个空格,则上述replace命令将出错。例如,

示例

PS C:\> $text = "This is a PowerShell latest version" PS C:\> $text.Replace(' ',',')

输出结果

This,,is,,,a,,,,PowerShell,latest,version

因此,我们可以使用如下所示的另一种方法。

$text -replace '\s+',' '

在上面的命令中,\ S表示空格,而+表示出现特定字符。因此,将删除多个空格。

接下来是在它们之间添加逗号(,),这样整个命令将如下所示。

($text -replace '\s+',' ') -replace (' ',',')