使用JavaScript,我想替换这个" TR>,"用这个" TR>"

时间:2015-04-21 12:37:39

标签: javascript regex

我已尝试在js中使用替换功能,但我无法找出正确的模式。我一直得到错误的输出。

t = "<TR><TD>Some Text</TD></TR>,<TR><TD>Some Text</TD></TR>,";

t = t.replace(/[TR\>\,]/g, "TR>");

对此有任何帮助将不胜感激。

6 个答案:

答案 0 :(得分:5)

[]定义字符类,表示“[...]”中的任何字符。你不希望这样。

只需删除它们:

t = t.replace(/TR>,/g, "TR>");

您也不需要在>,之前使用反斜杠,所以我也删除了反斜杠。

我不以任何方式与它有任何联系,但是当我处理JavaScript regex时,我发现https://regex101.com/#javascript非常方便。

实例:

var t = "<TR><TD>Some Text</TD></TR>,<TR><TD>Some Text</TD></TR>,";
snippet.log("Before: " + t);
t = t.replace(/TR>,/g, "TR>");
snippet.log("After: " + t);
<!-- Script provides the `snippet` object, see http://meta.stackexchange.com/a/242144/134069 -->
<script src="http://tjcrowder.github.io/simple-snippets-console/snippet.js"></script>

答案 1 :(得分:1)

试试这个

t = t.replace(/TR>,/g, "TR>");

答案 2 :(得分:1)

方括号[]用于匹配其中的任何一个字符。因此,您的正则表达式将匹配TR>,,而不是您想要的TR>,。如果要匹配确切的字符串,只需使用字符串/TR>,/g

t = t.replace(/TR>,/g, "TR>");

答案 3 :(得分:0)

&#13;
&#13;
replace( /TR>,/g, "TR>" )
&#13;
&#13;
&#13;

答案 4 :(得分:0)

var t = "<TR><TD>Some Text</TD></TR>,<TR><TD>Some Text</TD></TR>,";
t = t.replace(/TR>,/mg, "TR>");
alert(t);

输出:

<TR><TD>Some Text</TD></TR><TR><TD>Some Text</TD></TR>

CODEPEN DEMO


REGEX EXPLANATION

Match the character string “TR>,” literally «TR>,»
Insert the character string “TR>” literally «TR>»

答案 5 :(得分:0)

你可以这样做:

t = "<TR><TD>Some Text</TD></TR>,<TR><TD>Some Text</TD></TR>,";

t = t.replace(/TR>,/g, "TR>");

alert(t)