[英]How can I replace Unicode letter emojis with corresponding letter in JavaScript?
I have a string, for example: " cding question".我有一个字符串,例如:“cding question”。
I want to replace the "", "", and all Unicode letter emojis for that matter into the corresponding letter like "a", "o", etc.我想将“”、“”和所有 Unicode 字母表情符号替换为相应的字母,如“a”、“o”等。
*Note: Unsure if this helps, but I believe the Unicode letter emojis are referred to as regional indicator symbols. *注意:不确定这是否有帮助,但我相信 Unicode 字母表情符号被称为区域指示符号。
This is the solution I ended up figuring out thanks to some direction by ktp.由于ktp的一些指导,这是我最终弄清楚的解决方案。 It may not be the most efficient, but it was the best I could figure out for the time being.这可能不是最有效的,但这是我暂时能想到的最好的。 Open to feedback.接受反馈。
//Loop through each character of the text
for (let i = 0; i < text.length; i++) {
//Check if the character is a emoji
if (text.charCodeAt(i) >= 255)
//Check if the character is 🇦 or between 🇿
if (text.codePointAt(i) >= 127462 && text.codePointAt(i) <= 127487)
//Set the text equal to text with the emoji replaced as a lowercase letter equivalent
text =
text.substr(0, i) +
String.fromCodePoint(text.codePointAt(i) - 127365) +
text.substr(i + 2);
}
is this similar to what you are looking for?:这与您正在寻找的相似吗?:
let char = '🇦';
let cp = char.codePointAt(0);
let newChar = String.fromCodePoint(cp % 256);
console.log(newChar);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.