Notepad ++正则表达式替换 - 在引号内用\替换所有逗号

时间:2011-06-18 14:26:31

标签: regex notepad++ replace

我正在尝试将csv文件导入mysql,我需要在导入之前将其转换为正确的格式。

如果列中有逗号,则csv将其括在双引号中,这是一个没有逗号的行的示例,以及一个带逗号的行:

1,Superman
2,"Batman,Flash"

我需要做的是转换所有包含逗号的列以转义逗号并删除引号...例如"Batman,Flash"Batman\,Flash

这是我到目前为止所拥有的

Find: "(.*),(.*)"
Replace: \1\\,\2

但是,有两种情况不起作用:

  • 如果有多个带逗号列的逗号,它只会替换一个逗号。因此,"Batman,Flash,Robin"之类的内容将转换为Batman,Flash\,Robin
  • 如果第一列也有逗号,则此方法无效。例如,在诸如"1,2,3","Batman,Robin"
  • 之类的行上

如何更改正则表达式以适应尚未运行的两种情况?

1 个答案:

答案 0 :(得分:1)

对不起,但正则表达式这个工具。你必须解析它。

为什么?

你想转换它吗?

"test\, w00t!"

或者这个怎​​么样?

"test\\\\\, w00t!"

哎呀,即使这个?

"tes\\","\"ing\,\\,"