10秒目をつむったら…

Javascriptで指定した位置の文字列を変えるにはどうしたらよいのでしょうか?

var s = "0123456789";

を 6番目の5をGに変更。

var s = "01234G6789";

A 回答 (3件)

s.replace(/(?:.{5})(.)+?/,'G');

    • good
    • 2

たとえばこんな感じ



<script>
var s = "0123456789";
s=s.replace(/^(.{5})./,"$1G");
document.write(s)
</script>
    • good
    • 2

こんな関数を定義してみてはいかがでしょうか?



var s = "0123456789";
var rep = function(text,n,value){
  return text.substr(0, n) + value + text.substr(n+1);
};
//使い方
alert(rep(s,0,'G'));
alert(rep(s,1,'G'));
alert(rep(s,2,'G'));
alert(rep(s,3,'G'));
alert(rep(s,4,'G'));
alert(rep(s,5,'G'));
alert(rep(s,6,'G'));
alert(rep(s,7,'G'));
alert(rep(s,8,'G'));
alert(rep(s,9,'G'));
alert(rep(s,10,'G'));
alert(rep(s,11,'G'));
    • good
    • 0
この回答へのお礼

汎用的に使えますね。

お礼日時:2010/06/16 21:02

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


おすすめ情報