javascript替换多个字符

时间:2011-10-19 16:35:35

标签: javascript regex string replace

我搜索了修改过的JS,用新的字母替换了字母(字符),但我也想用不同的字符替换多个字符。

我。即结合'w'字母的单词(如gw,kw)不应打印为ѱ但¼£。但是下面的代码不能正常工作:(

任何想法都表示赞赏。

$(function() {
$("textarea").keyup(function() {
    var word = $(this).val();
    var tifinaghized = word.replace(/[abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ]|gw|kw/g, function(s) {
        return alphabet[s];
    });
    $("div").text(tifinaghized);
});
});

var alphabet = {
'a': 'Æ',
'b': 'ⴱ',
'c': 'Î',
'd': 'Ë',
'e': 'Ã',
'f': 'â',
'g': 'Ñ',
...
'w': '±',
...
'gw': '¼£', 
'kw': 'þ'
};

2 个答案:

答案 0 :(得分:2)

尝试将正则表达式更改为

/gw|kw|[abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ]/g

答案 1 :(得分:0)

你可以试试这个。这里的想法是,只有当多个字母组合(gw)不匹配时,我们才会匹配单个字母组合。


$(function() {
    $("textarea").keyup(function() {
        var word = $(this).val();
        var tifinaghized = word.replace(/gw|kw|[a-z]/gi, function(s) {
            return alphabet[s];
        });
        $("div").text(tifinaghized);
    });
});