在Javascript中匹配并替换数组中的对象

在Javascript中匹配并替换数组中的对象,javascript,Javascript,我想用JavaScript中数组的值替换对象 这是数组 replace_map={“u0627”:“A”,“u0675”:“A”,“u0673”:“A”,“u0630”:“Z”,“u0622”:“AA”,“u0628”:“B”,“u067E”:“P”,“u062A”:“T”,“u0637”:“T”,“u0679”:“T”,“u062C”:“J”,“u0633”:“S”,“u062B”:“S”,“u0635”:“S”,“u0686”:“CH”,“u062D”:“H”,“u0647”:“H”,“u0

我想用JavaScript中数组的值替换对象

这是数组
replace_map={“u0627”:“A”,“u0675”:“A”,“u0673”:“A”,“u0630”:“Z”,“u0622”:“AA”,“u0628”:“B”,“u067E”:“P”,“u062A”:“T”,“u0637”:“T”,“u0679”:“T”,“u062C”:“J”,“u0633”:“S”,“u062B”:“S”,“u0635”:“S”,“u0686”:“CH”,“u062D”:“H”,“u0647”:“H”,“u0629”:“H”,“u06DF,“u0636”:“Z”、“u0638”:“Z”、“u068E”:“Z”、“u0631”:“R”、“u0691”:“R”、“u0634”:“SH”、“u063A”:“GH”、“u0641”:“F”、“u06A9”:“K”、“u0642”:“K”、“u06AF”:“G”、“u0644”:“L”、“u0645”:“M”、“u0646”:“N”、“u06BA”:“N”、“u0648”:“O”、“u0649”:“Y”、“u0626”:“Y”、“u06CC”:“Y”、“u06C1”:“E”、“U06H”、“u0639”:“u0639”:“u0643”:“K”,“u0621”:“A”,“u0624”:“O”,“u060C”:“};

这是我的Javascript代码

<script>
$(function () {
mkTool('utf16-encode', function (text) {
    var encoded = punycode.ucs2.decode(text);
    ret = '';
    for (var i = 0; i < encoded.length; i++) {
        
        var hex = encoded[i].toString(16);
        ret += "\\u0" + hex + "";
    }
    const
    replacements = { "\u0627": "A", "\u0675": "A", "\u0673": "A", "\u0630": "Z", "\u0622": "AA", "\u0628": "B", "\u067E": "P", "\u062A": "T", "\u0637": "T", "\u0679": "T", "\u062C": "J", "\u0633": "S", "\u062B": "S", "\u0635": "S", "\u0686": "CH", "\u062D": "H", "\u0647": "H", "\u0629": "H", "\u06DF": "H", "\u062E": "KH", "\u062F": "D", "\u0688": "D", "\u0632": "Z", "\u0636": "Z", "\u0638": "Z", "\u068E": "Z", "\u0631": "R", "\u0691": "R", "\u0634": "SH", "\u063A": "GH", "\u0641": "F", "\u06A9": "K", "\u0642": "K", "\u06AF": "G", "\u0644": "L", "\u0645": "M", "\u0646": "N", "\u06BA": "N", "\u0648": "O", "\u0649": "Y", "\u0626": "Y", "\u06CC": "Y", "\u06D2": "E", "\u06C1": "H", "\u064A": "E", "\u06C2": "AH", "\u06BE": "H", "\u0639": "A", "\u0643": "K", "\u0621": "A", "\u0624": "O", "\u060C": "" };
    result = ret.replace(
    new RegExp(Object.keys(replacements).join('|'), 'g'),
    v => replacements[v]
    );
    return result;
        });
    });           
  </script>

$(函数(){
mkTool('utf16-encode',函数(文本){
var encoded=punycode.ucs2.decode(文本);
ret='';
对于(变量i=0;i替换件[v]
);
返回结果;
});
});           
我想替换ret返回对象
“\”u0627\”u0633“
从数组匹配和替换
Replace\u map


如何从数组中匹配和替换ret Return对象

您可以使用对象的所有键(使用实字符)构建一个正则表达式,并使用函数替换所有出现的项

const
“A”、“A”、“A”、“A”、“A”、“A”、“U 0673”、“A”、“A”、“A”、“A”、“U 0673”、“A”、“A”、“U 0630”、“Z”、“”、“U 0630”、“A”、“”、“U 0622”、“A”、“A”、“A”、“A”、“A”、“U 0627”、“A”、“A”、“A”、“A”、“A”、“A”、“A”、“A”、“A”、“A”、“A”、“A”,“A”、“A”、“A”、“A”、“A”、“A”、“A”、“A”、“A”、“A”、“A”、“A”、“T”、“T”、“T”、“T”、“T”、“T”、“T”、“T”、“u062C”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”““:”H“,“\u062E:”KH“,“\u062F:”D“,“\u0688:”D”“U068”是指“Z”,,“\U068 8 8”是指,“U068 8 8 8”是指“Z”,“\U068 8 8”是指“Z”,,“u0631”是,”u0631““,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,Y“,“\u06CC”:“Y”、“\u06D2”:“E”、“\u06C1”:“H”、“\u064A”:“E”,“\u06C2”:“AH”、“\u06BE”:“H”、“\u0639”:“A”、“\u0643”:“K”、“\u0621”:“A”、“\u0624”:“O”、“\u060C”:“},
字符串='\u0627\u0633',
结果=string.replace(
新的RegExp(Object.keys(replacements).join(“|”),“g”),
v=>替换件[v]
);
console.log(字符串);

console.log(result);
你想替换哪些字符?@nina scholz hi我想替换这个
“\”u0627\”u0633”
从replace\u映射到值u0627是A,u0633是i想替换Unicode u0627到数组中的Tex你可以使用map.has(“key”),key可以是ret=“u0”+hex+”;如果map有,使用map.get(ret),你会从地图上得到相应的A或S。你能重新编辑我的代码吗?我不太懂javascript我懂php basic我是学生这段代码将在这里工作`return ret;`?是的,尝试过用你的代码更新我的代码,但不适用于我。你能检查更新的代码吗?我与你共享文件如果是,那么如何?不。请使用原始字符串尝试首先,然后使用您拥有的权限。可能您的第一部分没有以想要的格式返回。对于长文本,我在您的代码长字符串
Uncaught SyntaxError:Invalid Unicode转义序列
error Uncaught SyntaxError:Invalid Unicode转义序列中遇到此错误