2016-06-20 7 views
0

他の文字列の中に部分文字列を追加する必要があります。いくつかの単語を含む部分文字列の後に文字列を挿入するには

問題は、いくつかの指定された単語の後にこれを追加する必要があります。例えば

: 配置する必要があります。$$$

文字列: 'バック私に私のお金を与えます。'

結果は「私にお金を返す$$$」とする必要があります。

そして、私の文字列が次のように含まれている場合:「私にお金を返せ」。

結果は「返金してください」とする必要があります。何も変更しないで

つまり、文字列に 'my money'が含まれていて、新しい部分文字列を挿入した場合にのみ部分文字列を挿入する必要があります。

答えて

4

$$$を追加する方法は、String#replaceです。 replace method there is special meaning for $の中にも、$を挿入するには、$$を使用する必要があります。

console.log(
 
    'Give me my money back.'.replace(/my money/, '$& $$$$$$') 
 
    // or '...'.replace('my money', '$& $$$$$$') 
 
)

0

あなたは3つの引数を取る簡単な関数を作成することができます。元の文字列を、あなたは元の文字列に一致する文字列と一致するで後に挿入される文字列を元の文字列。次のコードはまさにそれを行います。

var s1 = 'Give me my money back.'; 
 
var s2 = 'Give me money back.'; 
 
var ss = 'my money'; 
 

 
function addDollars(originalString, matchText, addedText){ 
 
    if(originalString.indexOf(matchText) > -1) 
 
    return originalString.slice(0,originalString.indexOf(matchText)+matchText.length) 
 
    +' ' +addedText+originalString.slice(originalString.indexOf(matchText)+matchText.length); 
 
    else 
 
    return originalString; 
 
    } 
 

 
console.log(addDollars(s1,ss,'$$$')); 
 
console.log(addDollars(s2,ss,'$$$'));

関連する問題