从JavaScript中删除基于十六进制值的字符串的特定字符

Remove specific character based on Hex value from string in JavaScript

本文关键字:字符串 字符 十六进制 JavaScript 删除      更新时间:2023-09-26

现在,我想在十六进制值之前删除所有额外的'x字符,并将十六进制值保持为字符串。例如,

转换字符串

"''x1D''x06''x1BH''x18+Congratulations!''x1D''x00"

到新字符串

的内容

1d 06 1b 48 18 2b 43 6f 6e 67 72 61 74 75 6c 61 74 69 6f 6e 73 21 1d 00

如何在JavaScript中有效地做到这一点?

使用以下代码似乎效果很好

var ss = "''x1D''x06''x1BH''x18+Congratulations!''x1D''x00";
ss.replace(/''x[0-9a-fA-F]{2}/g, function(v){ 
   return String.fromCharCode(parseInt(v.substr(2), 16));
});