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

使用PowerShell替换CSV文件中的特定引号(替代Batch方案)

需求与PowerShell解决方案

原始文件内容

"<Person>
      <Name> ""Test"" </Name> <Surname>""Test1""</Surname>
   </Person>
   <Person>
     <Name>""TestA""</Name>  <Surname>""""</Surname>
   </Person>"

替换需求

  • 将文件中的""""(四个双引号)替换为""(两个双引号)
  • 将文件中的""(两个双引号)替换为"(单个双引号)
  • 保留原文件的空格和XML结构,规避Batch脚本的字符长度限制及误删内容问题

PowerShell实现代码

# 读取目标CSV文件的完整内容
$content = Get-Content -Path "你的输入文件路径.csv" -Raw

# 优先替换四个双引号为两个双引号
$content = $content -replace '""""', '""'

# 再替换剩余的两个双引号为单个双引号
$content = $content -replace '""', '"'

# 移除原始文件首尾包裹的多余双引号(匹配你的输入格式)
$content = $content.Trim('"')

# 将处理后的内容写入输出文件
$content | Set-Content -Path "你的输出文件路径.csv" -Encoding UTF8

代码说明

  1. 使用-Raw参数一次性读取整个文件,避免逐行处理破坏XML结构
  2. 替换顺序不可颠倒:必须先处理四个双引号,否则会错误地将其拆分为两组双引号替换成单个引号
  3. Trim('"')用于清除原始内容首尾的包裹引号,适配你的输入格式
  4. 指定-Encoding UTF8确保输出文件编码无乱码

预期输出结果

<Person>
   <Name> "Test" </Name> <Surname>"Test1"</Surname>
  </Person>
  <Person>
   <Name>"TestA"</Name> <Surname>""</Surname>
  </Person>

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.14 18:28:09