文字列「hello」があり、2 番目と 3 番目の文字を _ に置き換えたい場合、実際の場所ではなく、部分文字列の場所だけを指定して、どうすればそれを行うことができますか。
質問する
16720 次
2 に答える
8
str = str.replace( /^(.)../, '$1__' );
は.
、改行以外の任意の文字に一致します。
は文字列の^
開始を表します。
は()
、最初に一致した文字をキャプチャして.
、置換文字列で参照できるようにします$1
。
正規表現に一致するものはすべて置換文字列に置き換えられる'$1__'
ため、文字列の先頭にある最初の 3 文字が一致し、最初の.
プラスに一致したものに置き換えられ__
ます。
于 2013-03-15T20:52:15.627 に答える
7
String.prototype.replaceAt=function(index, character) {
return this.substr(0, index) + character + this.substr(index+character.length);
}
str.replaceAt(1,"_");
str.replaceAt(2,"_");
于 2013-03-15T20:55:05.443 に答える