题目描述由于我们需求是全局匹配替换字符串,但是替换的字符串都是客户需要随机输入,可能包含“()”,“/”等转义字符,所以选择不用正则表达式题目来源及自己的思路使用split和join可以全局替换,但是没有办法实现不区分大小写相关代码// 请把代码文本粘贴到下方(请勿用图片代替代码)function replace_string(s1,s2,s3) {if(s2){
s1 = s1.split(s2).join(s3);;
}return s1;}你期待的结果是什么?实际看到的错误信息又是什么?不区分大小写的实现
1 回答
万千封印
TA贡献1891条经验 获得超3个赞
给你个思路:
将 目标文本和用户输入全部做小写化,
在小写目标文本中匹配到小写用户输入后,记录起始位置。 可用 indexOf(str, ?position) 方法实现确定所有出现位置。
根据上一步记录的文本出现位置,结合匹配文本的长度,将原始目标文本截取出不需要替换的部分,可使用 substring(start,?end) 方法实现,得到一个数组。
然后将第三步得到的数组,使用join(替换文本)重新组合即可。
添加回答
举报
0/150
提交
取消