如何用 JavaScript 字符串中的索引替换字符? [复制]

Posted

技术标签:

【中文标题】如何用 JavaScript 字符串中的索引替换字符? [复制]【英文标题】:How to replace characters by index in a JavaScript string? [duplicate] 【发布时间】:2013-03-04 17:24:59 【问题描述】:

如果我有字符串“hello”并且我想用 _ 替换第二个和第三个字符,我该怎么做,只给定子字符串的位置,而不是它的实际位置。

【问题讨论】:

我尝试了 replace() 方法,但你需要一个子字符串,而不仅仅是位置 @Sednus 请看:developer.mozilla.org/en-US/docs/javascript/Reference/… 【参考方案1】:
str = str.replace( /^(.)../, '$1__' );

. 匹配除换行符以外的任何字符。

^ 表示字符串的开头。

() 捕获与第一个 . 匹配的字符,因此它可以在替换字符串中被 $1 引用。

匹配正则表达式的任何内容都将替换为替换字符串'$1__',因此字符串开头的前三个字符将匹配并替换为第一个.加上__匹配的任何内容。

【讨论】:

This page 对了解更多 JavaScript 正则表达式很有帮助。 他可以,但最好看看replace()和正则表达式:w3schools.com/jsref/jsref_replace.asp/和this/regular-expressions.info/reference.html【参考方案2】:
String.prototype.replaceAt=function(index, character) 
      return this.substr(0, index) + character + this.substr(index+character.length);
   

str.replaceAt(1,"_");
str.replaceAt(2,"_");

取自:How do I replace a character at a particular index in JavaScript?

【讨论】:

以上是关于如何用 JavaScript 字符串中的索引替换字符? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

如何用另一个数组值替换javascript中的数组值?

如何用 sed 替换缩小的 javascript 文件中的多个值 [重复]

如何用 <br /> 元素替换字符串中的所有换行符?

字符串操作:如何用特定模式替换字符串

如何用JavaScript替换数组中间隔多个参数

如何用c#中的变量值替换字符串?