javascript - 替换所有包含在 "or ' 中的字符串

标签 javascript regex

text = abc "def"g'i' jklm'no' p"qrs uv w"

应该变成 abc !string! G弦! jklm!字符串! p !string!

到目前为止我有什么:

if(/(?:'[^']+'|"[^"]+")/.test(text){
   text = text.replace(/(?:'[^']+'|"[^"]+")/, "!string!");
}   

(杰瑞的回答)

它只替换第一次出现的用 '' 或 ""括起来的文本。这实际上与我之前的问题有关,但我认为这更复杂:How to search for the second occurence of ' or " in regex?

最佳答案

g修饰符执行全局匹配

text = text.replace(/(?:'[^']+'|"[^"]+")/g, "!string!");

关于javascript - 替换所有包含在 "or ' 中的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18354263/

相关文章:

javascript - 使用正则表达式分别拆分 = 、 == 和 ===

.net - 从 [regex] 类型加速器表达式中捕获命名组的 PowerShell 语法是什么?

Javascript Regexp 在字符串中查找 < 和 > 的组合

javascript - -webkit-transform 在 JavaScript 旋转动画中不起作用(无 JQuery)

javascript - 如何在向下滚动页面时添加CSS类

javascript - 如何在没有网络浏览器交互的情况下在 nightwatch.js 中等待任意时间

javascript - 如何使用CKeditor允许所有html标签和属性?

javascript - 一些 openweathermap API 示例代码出现问题

javascript - closest() 方法没有按预期工作

python - 使用正则表达式在字符串中的等号后面查找单引号python