Javascript 用相同的内容替换正则表达式字符串,并在其周围添加一个span标记

Javascript 用相同的内容替换正则表达式字符串,并在其周围添加一个span标记,javascript,jquery,regex,Javascript,Jquery,Regex,我试着在引号中的每个单词周围加上一个空格,有点像: $('code').html($('code').html().replace(/"(.*?)"/g, '<span>/"(.*)?"/g</span>') $('code').html($('code').html().replace(/“(.*?)”)/g,/“(.*)”))“/g”) 我可以让它用一个简单的字符串替换所有被引用的单词,但不能用它周围有一个跨距的原始内容。关于如何做到这一点,有什么想法吗?谢谢!在

我试着在引号中的每个单词周围加上一个空格,有点像:

$('code').html($('code').html().replace(/"(.*?)"/g, '<span>/"(.*)?"/g</span>')
$('code').html($('code').html().replace(/“(.*?)”)/g,/“(.*)”))“/g”)

我可以让它用一个简单的字符串替换所有被引用的单词,但不能用它周围有一个跨距的原始内容。关于如何做到这一点,有什么想法吗?谢谢!

在替换字符串中
$&
将得到regexp匹配的内容,
$1
将得到第一个捕获组,
$2
得到第二个捕获组,以及等等,那么:

$('code').html($('code').html().replace(/".*?"/g, '<span>$&</span>'));
$('code').html($('code').html().replace(/“*?”/g,$&');

在替换字符串中,
$&
将获得regexp匹配的内容,
$1
将获得第一个捕获组,
$2
将获得第二个捕获组,依此类推。因此:

$('code').html($('code').html().replace(/".*?"/g, '<span>$&</span>'));
$('code').html($('code').html().replace(/“*?”/g,$&');
试试这个:

str.replace(/"(\w+)"/g, '<span>$1</span>')
str.replace(/“(\w+)”/g,$1)
使用特殊变量($1、$2等)引用括号中的第一个(和第二个等)匹配项。

尝试以下方法:

str.replace(/"(\w+)"/g, '<span>$1</span>')
str.replace(/“(\w+)”/g,$1)

您使用特殊变量($1、$2等)来引用括号中的第一个(和第二个等)匹配项。

到目前为止您有什么?为什么会被否决?为什么会被否决?您在替换中失去了引号。我的错,我认为这是他想要的。不管怎样,现在回答:-)你在替换中失去了报价。我的错,我以为这就是他想要的。“不管怎样,”他现在回答说:——)