我有以下脚本:
$(".Text").contents().each(function () {
$(this).replaceWith($(this).text()
.replace(/\[([^\]]*)\]/g, '<span class="IT_Symbol" style="display:inline;border: 1px solid blue;">$&</span>')
);
});
它在方括号之间找到任何东西并用类包装它。元素样式是我可以看到它工作,因为这个脚本是由双击触发。目前它在方括号之间找到所有内容,包括括号本身。如果可能的话,我想删除括号,但保持介于两者之间。
答案 0 :(得分:2)
您将替换为$&
,这是整个匹配的文字。如果您替换为$1
,则只会匹配第一个组([^\]]*)
,因此会排除周围的括号。
$(".Text").contents().each(function () {
$(this).replaceWith($(this).text().replace(/\[([^\]]*)\]/g, '<span class="IT_Symbol" style="display:inline;border: 1px solid blue;">$1</span>'));
});