JavaScript:当存在单引号时,用于替换双大引号的正则表达式失败

标签 javascript regex

输入:

"Hello."
"'I'm not.'"

正则表达式:

/"\b/g // opening quote 
/"\B/g // closing quote

输出:

“Hello.”

”'I'm not.'”

如您所见,当正则表达式只是一个单词时,它可以正常工作。当单词被单引号括起来时,就会出现问题。不确定是什么问题。有什么想法吗?

最佳答案

我会尝试在 Something-followedBy-notSomething-followedBy-something 方法上构建正则表达式。所以它可能如下所示:

var input = "\"'I'm not.'\" - said Marry.";
var rex = /"([^"]+)"/g
alert(input.replace(rex, ''$1'')) 

DEMO

关于JavaScript:当存在单引号时,用于替换双大引号的正则表达式失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29034062/

相关文章:

javascript - Uncaught ReferenceError : collection is not defined---in meteor app

javascript - jQuery .each() 与 .map() 不返回

javascript - 从数组中查找包含指定单词的 div 的类名

python - 在 Python 中重复捕获奇怪的结果

javascript - 在jquery中访问 parent 的第二个 child

javascript - 从 IE 上的日期获取时区字符串

regex - .htaccess:重定向而不更改 url

javascript - 为什么这个正则表达式不符合预期的方式?

regex - 匹配特定模式后在数字之间插入空格

Java如何替换反斜杠?