javascript 替换指定位置的字符

发布网友

我来回答

9个回答

热心网友

// 将 str 中的 a 替换为 A

var str = 'abcdefg';
var result = str.replace('c', 'n');
console.log('result:' + result); 

// 输出 result:abndefg

扩展资料:

// 将str 中所有的 a 替换为 A

var str = 'abcabcabc';
var result = str.replace(/a/g, 'A');
console.log('result:' + result);

// 输出 result:AbcAbcAbc

热心网友

最简单的办法是用数组去替换指定位置的字符。

下面是代码的简单实现,仅供参考:

var a = 'asdfsdfsdfsadf';
a=a.split('');  //将a字符串转换成数组
a.splice(1,1,'xxxxx'); //将1这个位置的字符,替换成'xxxxx'. 用的是原生js的splice方法。
console.log(a);   //结果是:
["a", "xxxxx", "d", "f", "s", "d", "f", "s", "d", "f", "s", "a", "d", "f"]

a.join('');  //将数组转换成字符串。  完成。

热心网友

楼上两位,指定位置去替换的话直接用replace是不可以的,因为不知道要替换的字符是什么。所以要先根据位置取到要替换的字符,楼主的问题是已知要替换的位置,而不是字符:)

<SCRIPT LANGUAGE="JavaScript">

function requestText(mtext,wei,ptext)
{
var text1= mtext.charAt(wei);
var text2 = mtext.charAt(wei);
mtext=mtext.replace(text1,ptext)
mtext=mtext.replace(text2,ptext)
return mtext;
}
var text="12345670"
alert("替换前:"+text)
text=requestText(text,2,"n")
text=requestText(text,4,"m")
alert("替换后:"+text)
</SCRIPT>

以下是程序说明懒的看可以不看-_-!

调用函数requestText,传递过去3个参数,第一个:要替换的字符串,第二个要字符替换的位置(例如:3),第三个要替换的字符(例如:m)。

//取得第3位字符是什么
var text1= text.charAt(2);

//取得第5位字符是什么
var text2 = text.charAt(4);

//替换第3位置的字符
mtext=mtext.replace(text1,ptext)

//替换第5位置的字符
mtext=mtext.replace(text2,ptext)

热心网友

上面的都是错误的哦
replace会对每一个满足条件的字符进行替换,如果原字符串有多个相同的字符,那不是都要被替换了?

其实只要这样写一个方法,然后调用就可以了
function replacePos(strObj, pos, replacetext)
{
var str = strObj.substr(0, pos-1) + replacetext + strObj.substring(pos, strObj.length);
return str;
}
var text="abcdefg"
var mystr = replacePos(text, 3, "n");
mystr = replacePos(mystr, 5, "m");

最后这个mystr就是你要的字符串了

还有使用的时候,要注意,你要替换的位置不能超过了字符串的长度
不然会出错,你或者在替换函数里面判断一下,如果超过长度,则不替换

热心网友

以下函数可以把 asdfghijklmn 替换成 axxfghijklmn
var axy = []
var ary = a.split('');
for (var i = 0; i < ary.length; i++)
{
if(i==1)
{
axy.push("*")

}
else if(i==2)
{
axy.push("*")

}
else
{
axy.push(ary[i])
}

var out = axy.join("")
return out
}

热心网友

alt+H 然后输入abcdefg 替换为abcdefg

就哦了

热心网友

这样就可以
<script>
var a="abcdefg";
alert(a.replace("c","n").replace("e","m"));
</script>

热心网友

var x,y
x="abcdefg"
y=x.replace("c","n")
x=y.replace("e","m")

热心网友

substring

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com