我有带有表情符号的字符串,例如 str = 。我在上面的字符串上应用了下面的字符串替换功能
self.rx_unified = new RegExp('(' + a.join('|') + ')(\uD83C[\uDFFB-\uDFFF])?', "g");
return str.replace(self.rx_unified, function(m, p1, p2) {
var val = self.map.unified[p1];
if (!val) return m;
var idx = null;
if (p2 == '\uD83C\uDFFB') idx = '1f3fb';
if (p2 == '\uD83C\uDFFC') idx = '1f3fc';
if (p2 == '\uD83C\uDFFD') idx = '1f3fd';
if (p2 == '\uD83C\uDFFE') idx = '1f3fe';
if (p2 == '\uD83C\uDFFF') idx = '1f3ff';
if (idx) {
return self.replacement(val, null, null, {
idx: idx,
actual: p2,
wrapper: ''
});
}
return self.replacement(val);
});
但我越来越。有人可以帮忙吗?