正则表达式替换在引号之间输入

Neb*_*ebu 9 javascript regex

如何替换文本文件中两个引号之间的所有输入.第一个引号始终以制表符开头,或者它是行中的第一个字符(csv文件).我尝试了以下正则表达式

/(\t"|^")([^"]*)(\n)([^"]*")/gm
Run Code Online (Sandbox Code Playgroud)

但是这个正则表达式只匹配两个引号之间的第一个输入,而不是全部.

例如,以下文字:

xx "xx 
xx 
xx" 
xx 
"xx"
xx 
xx
"xxx xxx 
xx"
Run Code Online (Sandbox Code Playgroud)

应该成为

xx "xx xx xx" 
xx 
"xx"
xx 
xx
"xxx xxx xx"
Run Code Online (Sandbox Code Playgroud)

我阅读了以下帖子( javascript正则表达式替换括号之间的空格)非常相似,但正则表达式建议我的情况不可用.

bob*_*ble 12

使用Javascript替换,您可以使用函数作为替换.

var str = 'foo \n"a\n" bar\n';

str = str.replace(/"[^"]+"/g, function(m) {
 return m.replace(/\n/g, ' ');
});

console.log(str);
Run Code Online (Sandbox Code Playgroud)

正则表达式"[^"]+"将引用的内容与之间的一个或多个引号匹配.

根据需要添加选项卡或根据模式启动条件: (?:\t|^)"[^"]+"