You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用PowerShell将特定格式文本文件转换为CSV格式求助

PowerShell 文本转 CSV 解决方案

下面是针对需求的PowerShell脚本,可将指定格式的文本文件转换成符合要求的CSV:

# 读取文本文件内容,按空行分割成独立数据组
$content = Get-Content -Path "你的输入文件路径.txt" -Raw
$groups = $content -split '(?m)^\s*$' | Where-Object { $_ -match '\S' }

# 初始化结果数组
$results = @()

# 遍历每个数据组,解析为结构化对象
foreach ($group in $groups) {
    $item = [PSCustomObject]@{
        Quantity         = ($group -split 'Quantity: ')[1] -split "`n" | Select-Object -First 1 | ForEach-Object { $_.Trim() }
        Manufacturer     = ($group -split 'Manufacturer: ')[1] -split "`n" | Select-Object -First 1 | ForEach-Object { $_.Trim() }
        'License metric' = ($group -split 'License metric: ')[1] -split "`n" | Select-Object -First 1 | ForEach-Object { $_.Trim() }
        Expiry           = ($group -split 'Expiry: ')[1] -split "`n" | Select-Object -First 1 | ForEach-Object { $_.Trim() }
    }
    $results += $item
}

# 导出为CSV文件
$results | Export-Csv -Path "输出文件路径.csv" -NoTypeInformation -Encoding UTF8

脚本说明

  • 读取与分割数据:Get-Content -Raw一次性读取整个文件内容,通过正则表达式分割符(?m)^\s*$按空行拆分数据组,再过滤掉无内容的空组。
  • 字段解析:针对每个数据组,按字段名分割提取对应值,用Trim()去除多余空格,封装为PSCustomObject保证结构规整。
  • CSV导出:Export-Csv将结构化对象导出为CSV,-NoTypeInformation移除PowerShell默认的类型注释,-Encoding UTF8确保跨平台兼容性。

使用提示

替换脚本中的你的输入文件路径.txt和输出文件路径.csv为实际文件路径即可执行。即使文本内字段顺序发生变化,脚本仍能按字段名正确提取数据。

内容的提问来源于stack exchange,提问作者Venkatesh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.23 03:33:16