Javascript 使用正则表达式在公司名称周围添加双引号

标签 javascript regex

我有一行数据,我想在公司名称周围添加双引号(“Test1, Inc”)

原文:12345, 67890,名称“名称”,更多名称,99999,Test1, Inc,2017-01-01 00:00:00

预期:12345、67890、名称“名称”、更多名称、99999、“Test1, Inc”、2017-01-01 00:00:00

我无法完全正确地理解它。任何正则表达式专家都知道为什么吗?

let a = "12345, 67890, Name \"The Name\", More Name, 205298, Test1, Inc, 2017-01-01 00:00:00";
a= a.replace(/(,)(.*,.*Inc)(,)/g, `${'$1'}\"${'$2'}\"${'$3'}`)
console.log(a);

最佳答案

您可以使用/([^, ]+,[^,]*Inc)/g;这里使用[^,]来匹配非逗号字符:

let a = "12345, 67890, Name \"The Name\", More Name, 205298, Test1, Inc, 2017-01-01 00:00:00";
a= a.replace(/([^, ]+,[^,]*Inc)/g, '"$1"')
console.log(a);

关于Javascript 使用正则表达式在公司名称周围添加双引号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47445969/

相关文章:

Javascript 模式验证

javascript - 对不同函数求和 - Javascript

javascript - jQuery - 如何检查 AJAX 调用中响应对象的大小?

javascript - 预期的 ;解析csv文件时

c++ - 将 QRegularExpression 应用于句子时避免\r

regex - 使用正则表达式 notepad2 将字符添加到字符串的末尾

javascript - 我需要提取字符串中数字的前 6 位和后 4 位数字,并使用正则表达式删除前导零

regex - Perl 6 语法与我认为的不匹配

javascript - knockout foreach 绑定(bind)不起作用

javascript - 从 Jquery Ajax 调用 servlet