如何在另一个字符串的特定索引处插入一个字符串?
var txt1 = "foo baz"
假设我想在“ foo”之后插入“ bar”,我该如何实现?
我想到了substring()
,但必须有一个更简单,更直接的方法。
您可以将自己的原型制作splice()
为String。
if (!String.prototype.splice) {
/**
* {JSDoc}
*
* The splice() method changes the content of a string by removing a range of
* characters and/or adding new characters.
*
* @this {String}
* @param {number} start Index at which to start changing the string.
* @param {number} delCount An integer indicating the number of old chars to remove.
* @param {string} newSubStr The String that is spliced in.
* @return {string} A new string with the spliced substring.
*/
String.prototype.splice = function(start, delCount, newSubStr) {
return this.slice(0, start) + newSubStr + this.slice(start + Math.abs(delCount));
};
}
String.prototype.splice = function(idx, rem, str) {
return this.slice(0, idx) + str + this.slice(idx + Math.abs(rem));
};
var result = "foo baz".splice(4, 0, "bar ");
document.body.innerHTML = result; // "foo bar baz"
编辑: 对其进行了修改,以确保它rem
是一个绝对值。
问题内容: 我只需要在字符串的第3个位置插入字符“ /”即可。 即成为。 我正在使用一些程序GUI来执行此操作,它接受正则表达式模式和替换。 我知道这一定是超级简单的,但我似乎找不到简单的答案。 问题答案: 将字符串[ ] 开头的3个[ ]字符[ ] 替换为(match ,后跟a )。
问题内容: 我正在尝试替换字符串中特定索引处的字符。 我正在做的是: 这给出了一个错误。有什么方法可以做到这一点? 问题答案: 字符串在Java中是不可变的。你不能更改它们。 你需要创建一个新字符串并替换字符。 或者,你可以使用StringBuilder:
问题内容: 我可以在熊猫的特定列索引处插入列吗? 这会将列作为的最后一列,但是没有办法告诉它放在开始处吗? 问题答案: 参见文档:http : //pandas.pydata.org/pandas- docs/stable/genic/pandas.DataFrame.insert.html 使用loc = 0将在开头插入
问题内容: 我有一个带有两列“标识符”,“值”和“子标识”的以下数据框 df : 我有一个索引列表,例如 我想在列表x中提到的索引之前插入行。就像,对于在索引2之前插入的行,将具有以下值,它将具有 与 在索引2处的行 相同的标识符 ,即1; 与 索引2的行 相同的值 ,即103;但是新行中的 subid 将是((索引2处的subid)-1),或者仅仅是前一行的subid,即1。 以下是我期望的最终
问题内容: 我有一个字符串,假设我需要替换索引3处的char。如何通过指定索引来替换char? 我需要类似的东西 问题答案: 在JavaScript中,字符串是 不可变的 ,这意味着您可以做的最好的事情是创建一个具有更改内容的新字符串,然后将变量分配为指向它。 您需要自己定义函数: 并像这样使用它:
我已经尝试遍历字符串并手动替换它们,但计数是关闭的。我也尝试过使用列表、数组、stringbuilder等,但我无法使其工作: 我觉得必须有一种简单的方法来用子字符串替换字符串中的单个字符,而不必进行所有这些迭代。我说错了吗?