我所拥有的是一个包含特殊字符,字符和整数的字符串,我想要做的是,做类似的事情,如下所述:
说我有像Radiobutton_12
这样的字符串。我想在“_”之前删除所有字符。那就是:
var s = Radiobutton_12
s = s. Substring (s. indexOf ("_") +1);
Same as I can remove character after all that. But what scenario demands is:
radiobutton1_1, radiobutton2_1, radiobutton3_1
What if I want to keep, 1 1, 2 1, 3 1
我没有得到那个。希望任何人都可以帮助我。
答案 0 :(得分:1)
var str='radiobutton1_1';
var str1= 'radiobutton2_1';
var str2= 'radiobutton3_1';
var spiltStr1=str.split('_');
var spiltStr2=str1.split('_');
var spiltStr3=str2.split('_');
alert(spiltStr1[0].replace( /^\D+/g, '')+" "+spiltStr1[1])
alert(spiltStr2[0].replace( /^\D+/g, '')+" "+spiltStr2[1])
alert(spiltStr3[0].replace( /^\D+/g, '')+" "+spiltStr3[1])
答案 1 :(得分:1)
我相信它可以在单行中完成:
var arr = str.split(/\D+/).filter(Boolean);
<强>测试强>
arr = 'RadioButton11_12'.split(/\D+/).filter(Boolean);
["11", "12"]
arr = 'RadioButton_12'.split(/\D+/).filter(Boolean);
["12"]
答案 2 :(得分:0)
@Prabu Parthipan解决方案将解决您的问题,但如果您只想从字符串中取出数字对,则可以使用正则表达式。
var r = /\d+/g;
var s = "RadioButton11_12";
var m = s.match(r);
for(var i=0;i<m.length;i++){
console.log(m[i]);
}