Javascript replace()删除两个特殊字符之一
替换变量var2中的{t},从var1中删除“$”符号,并在最终结果中将其呈现为abc$abc而不是abc$$abcJavascript replace()删除两个特殊字符之一,javascript,jquery,html,replace,Javascript,Jquery,Html,Replace,替换变量var2中的{t},从var1中删除“$”符号,并在最终结果中将其呈现为abc$abc而不是abc$$abc var var1 = 'abc$$abc'; var var2 = 'You are comparing {t} entity'; $('#div1').append('<div id="div2">' + var2.replace('{t}','<a href="' + var1 + '" target="_self">' + '</a>')
var var1 = 'abc$$abc';
var var2 = 'You are comparing {t} entity';
$('#div1').append('<div id="div2">' + var2.replace('{t}','<a href="' + var1 + '" target="_self">' + '</a>') + '</div>');
var var1='abc$$abc';
var var2='您正在比较{t}实体';
$('#div1').append(''+var2.replace('{t}','')+'');
我能找到的最接近的问题是,但即使这样也不能解决问题
毫无疑问,我可以检查结果字符串是否只包含两个$s中的一个$s,但我想知道上面的append是否有任何错误,以及是否有任何通用方法可以通过使用两个$sign还原结果字符串来实现结果。
$
在javascript字符串替换中具有特殊意义。当你使用$$
时,你基本上是在逃避其中一个。如果您想要两个,可以使用四个$$$$
为了使您的代码具体工作,我认为这是最简单的事情:
var var1 = 'abc$$abc'.split("$").join("$$");
有关replace()
中的$
的详细信息,请参见此处:
我想我也应该在这里插入我的评论: 如果您需要确保在
{t}
替换过程中完成此操作(如果字符串在初始化后可能会更改),您可以这样将其插入:
$('#div1').append('<div id="div2">' +
var2.replace('{t}','<a href="' +
var1.split("$").join("$$") +
'" target="_self">' + '</a>')
+ '</div>');
那么您的代码将如下所示:
$('#div1').append('<div id="div2">' +
replaceEscapingDollars(var2, '{t}', '<a href="' + var1 + '" target="_self">' + '</a>') +
'</div>');
$
在javascript字符串替换中具有特殊意义。当你使用$$
时,你基本上是在逃避其中一个。如果您想要两个,可以使用四个$$$$
为了使您的代码具体工作,我认为这是最简单的事情:
var var1 = 'abc$$abc'.split("$").join("$$");
有关replace()
中的$
的详细信息,请参见此处:
我想我也应该在这里插入我的评论: 如果您需要确保在
{t}
替换过程中完成此操作(如果字符串在初始化后可能会更改),您可以这样将其插入:
$('#div1').append('<div id="div2">' +
var2.replace('{t}','<a href="' +
var1.split("$").join("$$") +
'" target="_self">' + '</a>')
+ '</div>');
那么您的代码将如下所示:
$('#div1').append('<div id="div2">' +
replaceEscapingDollars(var2, '{t}', '<a href="' + var1 + '" target="_self">' + '</a>') +
'</div>');
$
在javascript字符串替换中具有特殊意义。当你使用$$
时,你基本上是在逃避其中一个。如果您想要两个,可以使用四个$$$$
为了使您的代码具体工作,我认为这是最简单的事情:
var var1 = 'abc$$abc'.split("$").join("$$");
有关replace()
中的$
的详细信息,请参见此处:
我想我也应该在这里插入我的评论: 如果您需要确保在
{t}
替换过程中完成此操作(如果字符串在初始化后可能会更改),您可以这样将其插入:
$('#div1').append('<div id="div2">' +
var2.replace('{t}','<a href="' +
var1.split("$").join("$$") +
'" target="_self">' + '</a>')
+ '</div>');
那么您的代码将如下所示:
$('#div1').append('<div id="div2">' +
replaceEscapingDollars(var2, '{t}', '<a href="' + var1 + '" target="_self">' + '</a>') +
'</div>');
$
在javascript字符串替换中具有特殊意义。当你使用$$
时,你基本上是在逃避其中一个。如果您想要两个,可以使用四个$$$$
为了使您的代码具体工作,我认为这是最简单的事情:
var var1 = 'abc$$abc'.split("$").join("$$");
有关replace()
中的$
的详细信息,请参见此处:
我想我也应该在这里插入我的评论: 如果您需要确保在
{t}
替换过程中完成此操作(如果字符串在初始化后可能会更改),您可以这样将其插入:
$('#div1').append('<div id="div2">' +
var2.replace('{t}','<a href="' +
var1.split("$").join("$$") +
'" target="_self">' + '</a>')
+ '</div>');
那么您的代码将如下所示:
$('#div1').append('<div id="div2">' +
replaceEscapingDollars(var2, '{t}', '<a href="' + var1 + '" target="_self">' + '</a>') +
'</div>');
$
是一个in字符串。replace()
始终由单个$
替换。您需要将所有美元符号加倍:
var var1 = 'abc$$abc'.replace( /\$/g, '$$$$' );
(四个美元符号,因为它们同样充当替换模式。)$
是一个in字符串。replace()
总是被一个$
替换。您需要将所有美元符号加倍:
var var1 = 'abc$$abc'.replace( /\$/g, '$$$$' );
(四个美元符号,因为它们同样充当替换模式。)$
是一个in字符串。replace()
总是被一个$
替换。您需要将所有美元符号加倍:
var var1 = 'abc$$abc'.replace( /\$/g, '$$$$' );
(四个美元符号,因为它们同样充当替换模式。)$
是一个in字符串。replace()
总是被一个$
替换。您需要将所有美元符号加倍:
var var1 = 'abc$$abc'.replace( /\$/g, '$$$$' );
(四个美元符号,因为它们同样充当替换模式。)这与
$无关。append()
,它可以通过简单的控制台.log(“a.replace”(“a”),“$”)来演示代码>相关:你是对的,但我不明白为什么这两个$s被减少到只有一个。另外,如果包含$$的字符串是动态的,在这种情况下,编写一个单独的函数来执行另一个替换是没有意义的。@ronanmarsh,为什么不呢?您还可以及时修复字符串以进行追加替换..append(…var2.replace({t})”,…var1.split($).join($$)..
@ronanmarsh,或者如果您在许多地方都这样做,并且不想每次都这样做,那么您可以创建自己的replaceScapeingDullars(str,find,replacement){返回str replace(find,replacement.split($).join($);
这与$无关。append()
,它可以通过简单的控制台.log(“a.replace”(“a“,“$”)来演示)
Related:你是对的,但我不明白为什么两个$s被减少为一个。另外,如果包含$$的字符串是动态的,那么,编写一个单独的函数来执行另一个替换就没有任何意义了。@ronanmarsh,为什么不呢?你还可以及时修复字符串,以便进行追加替换。。。…append(…var2.replace(“{t}”),…var1.split(“$”)。join(“$$”)。
@ronanmarsh,或者如果您在许多地方都这样做,并且您不想每次都这样做,您可以创建自己的replaceScapeingDollars(str,find,replacement){返回str.replacement(find,replacement.split(“$”)。join($”)
这与$.append()
无关,它可以通过简单的控制台.log(“a.replace”(“a“,“$”)来演示;
相关:你是对的,但我不明白为什么两个$s被减少为一个。还有,什么