replace Nth occurence in string - JavaScript
本问题已经有最佳答案,请猛点这里访问。
我确信这是可行的,但我不能让它做我想做的:
1 2 | new_str = old_str.replace(3,"a"); // replace index 3 (4th character) with the letter"a" |
所以如果我有
无论是本地JS还是jquery解决方案都是好的,无论哪一个最好(我在那个页面上使用jquery)。
我尝试过搜索,但是所有的教程都在谈论regex等,而不是索引替换。
您似乎希望替换数组样式,因此请将字符串转换为数组:
1 2 3 4 5 6 7 8 | // Split string into an array var str ="abcdef".split(""); // Replace char at index str[3] ="a"; // Output new string console.log( str.join("") ); |
还有三种方法-
var old_str="abcdef",
1 2 3 4 5 6 7 8 9 | //1. new_str1= old_str.substring(0, 3)+'a'+old_str.substring(4), //2. new_str2= old_str.replace(/^(.{3}).(.*)$/, '$1a$2'), //3. new_str3= old_str.split(''); new_str3.splice(3, 1, 'a'); |
号
//返回值
1 2 3 4 5 6 7 | new_str1+' '+new_str2+' '+ new_str3.join(''); abcaef abcaef abcaef |