2016-07-02 3 views
0

に複数の文字を置き換える私の配列と文字列です:Javascriptがここで一度

var array = new Array('üÜ', 'ıI', 'iİ', 'ğĞ', 'şŞ', 'çÇ'); 
var string = 'İSTANBUL, ÜSKÜDAR, Çarşamba' 

私は[UU]に(üのための)すべてのを交換すると思います。私は[üÜ] SK [üÜ] DARを意味します。誰でも助けてくれますか?

答えて

3

私はこの方法では、アレイ内のすべての文字を置き換えることができますどのようにreplace()方法全ての試合のために

string.replace(/ü|Ü/g, '[üÜ]') 

array.forEach(function(key){ 
    string = string.replace(new RegExp('['+ key +']', 'g'), '['+ key +']'); 
}); 
+0

を使用することができますか? – cafoob

+2

私はあなたがこの部分から分かりますが。さて、私の答えを更新させてください。 –

+0

@cafoob私はそれがうまくいく、 –

0
function replaceAll(source, search, replace, ignoreCase) { 
    //SCAPE SPECIAL CHARACTERES. 
    var search1 = search.toString().replace(/([.*+?^=!:${}()|\[\]\/\\])/g, "\\$1"); 
    //IGNORE CASE SENSIVITY. 
    var ignore = (ignoreCase) ? "gi" : "g"; 
    var result = source.replace(new RegExp(search1, ignore), replace); 
    return result; 
} 


var array = new Array('üÜ', 'ıI', 'iİ', 'ğĞ', 'şŞ', 'çÇ'); 

for (var i=0; i < array.length; i++){ 
    array[i] = replaceAll(array[i],"ü", "üÜ",true); 
}