我想刪除數字和大括號,但是拼接結果是從字符串獲取的索引之間的字符串。我只是希望它去除,留下我:「1234 ..... ABCDEFG」Javascript:刪除字符串中的隨機字符串
var mystring = "1234 ..... { 400 } ABCDEFG";
var s1 = mystring.indexOf("{");
var s2 = mystring.indexOf("}");
mystring = mystring.splice(s1,s2);
我想刪除數字和大括號,但是拼接結果是從字符串獲取的索引之間的字符串。我只是希望它去除,留下我:「1234 ..... ABCDEFG」Javascript:刪除字符串中的隨機字符串
var mystring = "1234 ..... { 400 } ABCDEFG";
var s1 = mystring.indexOf("{");
var s2 = mystring.indexOf("}");
mystring = mystring.splice(s1,s2);
您可以使用正則表達式替換隻刪除它們之間的撐杆和字符:
var mystring = "1234 ..... { 400 } ABCDEFG";
mystring = mystring.replace(/\{.*?\}/, "");
工作演示:http://jsfiddle.net/jfriend00/sDHc9/
如果你不想使用正則表達式,你可以做這樣的:
var mystring = "1234 ..... { 400 } ABCDEFG";
var s1 = mystring.indexOf("{");
var s2 = mystring.indexOf("}");
mystring = mystring.substr(0, s1) + mystring.substr(s2 + 1);
alert(mystring);
splice
不是String
方法,讓你的代碼應該拋出一個TypeError
使用
var mystring = "1234 ..... { 400 } ABCDEFG";
mystring = mystring.replace(/{.+?}/,'');
或者,如果你真的想用splice
var mystring = "1234 ..... { 400 } ABCDEFG";
var s1 = mystring.indexOf("{");
var s2 = mystring.indexOf("}");
mystring = [].splice.call(mystring,0,s1)
.concat([].splice.call(mystring,s2+1))
.join('');