我正在编写一个函数,用于在某些情况下替换div类,例如
- 条件A -div类是e_new_hazard_frame_2_1_4_7,我想将2替换为1,结果应该是这样的- e_new_hazard_frame_1_1_4_7
- 条件B -div类与上面相同,我想将1替换为4,结果应该是这样的- e_new_haz_frame_2_4_4_7
- 条件C -div类与上面相同,我想将4替换为6,结果应该是这样的- e_new_haz_frame_2_1_6_7
- 条件D -div类与上面相同,我想将7替换为3,结果应该是这样的- e_new_haz_frame_2_1_4_3
这4个数字可能是一样的,比如1_1_1_1,我的演示代码是这样的Var STR = ' e_new_haz_frame__1 ';STR = STR .replace(/_[_0-9]*)$/,'1');
这似乎不正确,有人能教我怎么做吗?非常感谢!试试这个。它可能对你有帮助。
<div class="e_new_hazard_frame_2_1_4_7">click to change value</div>
<script type="text/javascript">
$(".e_new_hazard_frame_2_1_4_7").on('click',function(){
change_class(7); //change the value from here i.e 2,4,1,7
});
function change_class(p)
{
var number_change=p;
switch (number_change)
{
case 2:
var str='e_new_hazard_frame_2_1_4_7';
str = str.replace(/[2]/g,'1');
break;
case 1:
var str='e_new_hazard_frame_2_1_4_7';
str = str.replace(/[1]/g,'4');
break;
case 4:
var str='e_new_hazard_frame_2_1_4_7';
str = str.replace(/[4]/g,'6');
break;
case 7:
var str='e_new_hazard_frame_2_1_4_7';
str = str.replace(/[7]/g,'3');
break;
}
$(".e_new_hazard_frame_2_1_4_7").html(str);
}
</script>
也许使用一个函数来处理你想要的数字?
replace Javascript | MDN
function replacer(match, p1, p2, p3, p4, offset, string){
// p1-4 are your numbers
// (they are strings right now, sto make +p1 to convert them to int)
p1= +p1 + 1;
p2= +p2 + 1;
p3= +p3 + 1;
p4= +p4 + 1;
// fixed a small bug here
return ['', p1, p2, p3, p4].join('_');
};
var str = "asdasdasd_1_2_3_4";
str = str.replace(/_('d)_('d)_('d)_('d)/, replacer);
这将替换str:
中所有出现2到1的字符。var str = 'e_new_hazard_frame_2_1_2_4';
str = str.replace(/2/g,'1');
替换div的类:
var target_class = 'e_new_hazard_frame_2_1_4_7';
$('.'+target_class).removeClass(target_class).addClass(target_class.replace(/2/g,'1'))
In PHP
echo str_replace("2","1","e_new_hazard_frame_2_1_4_7");
有关更多参考,请访问此。希望这对你有帮助。
JavaScript在<<p> strong> str.replace("e_new_hazard_frame_2_1_2_4","e_new_hazard_frame_1_1_2_4");
有关更多参考,请访问
我想它可能对你有用"str ="e_new_hazard_frame_2_1";
if(conditin1)
{
pattern = /[2]/g;
str = str.replace(pattern,'1');
}
if(conditin2)
{
pattern = /[1]/g;
str = str.replace(pattern,'4');
}
if(conditin3)
{
pattern = /[4]/g;
str = str.replace(pattern,'6');
}
if(conditin4)
{
pattern = /[7]/g;
str = str.replace(pattern,'3');
}`