【FCC】freeCodeCamp:Where art thou 替换字符串
生活随笔
收集整理的這篇文章主要介紹了
【FCC】freeCodeCamp:Where art thou 替换字符串
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
使用給定的參數對句子執行一次查找和替換,然后返回新句子。
第一個參數是將要對其執行查找和替換的句子。
第二個參數是將被替換掉的單詞(替換前的單詞)。
第三個參數用于替換第二個參數(替換后的單詞)。
注意:替換時保持原單詞的大小寫。例如,如果你想用單詞 "dog" 替換單詞 "Book" ,你應該替換成 "Dog"。
String.prototype.replace()的語法:
str.replace(regexp|substr, newSubStr|function)
余下的問題在于如何替換時保持原單詞的大小寫。這個指的應當是單詞的首字母
// 解法1
if(before[0] === before[0].toUpperCase()){
// ...
}
// 解法2
var reg = /^[A-Z]/;
if(re.test(before.charAt(0))){
// ...
}
這里順便說一下訪問單個字符時, str[index] 和 charAt(index) 的區別:
對于 超出范圍的索引值 , str[index] 將返回 undefined ,而 charAt(index) 將返回一個空字符串。
對于 IE8以下版本 , str[index] 不被兼容,將返回 undefined。
解法
// 解法1
function myReplace(str,before,after){
if(before[0] === before[0].toUpperCase()){
after = after[0].toUpperCase() + after.slice(1);
}
str = str.replace(before,after);
return str;
}
// 解法2
function myReplace(str,before,after){
var reg = /^[A-Z]/;
if(reg.text(before.charAt(0))){
after = after.charAt(0).toUpperCase() + after.slice(1);
}
str = str.replace(before,after);
return str;
}
//解法3
function myReplace(str, before, after) {
if(before[0]>='A' && before[0]<='Z'){
after = after[0].toUpperCase()+after.substring(1);
}
str=str.replace(before,after);
return str;
}
作者:不要變成發抖的小喵喵喵喵喵喵
鏈接:https://www.jianshu.com/p/4d72dfe478b5
總結
以上是生活随笔為你收集整理的【FCC】freeCodeCamp:Where art thou 替换字符串的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: wordpress搬家导入数据错误MyS
- 下一篇: 【FCC】Pig Latin