我使用以下函数替换字符串中的表情符号,效果很好:
function doEmoji(s){
var ranges = [
'\ud83c[\udf00-\udfff]', // U+1F300 to U+1F3FF
'\ud83d[\udc00-\ude4f]', // U+1F400 to U+1F64F
'\ud83d[\ude80-\udeff]' // U+1F680 to U+1F6FF
];
var x = s.toString(16).replace(new RegExp(ranges.join('|'), 'g'),' whatever ');
return x;
};
现在我想检查该字符串是否只包含表情符号或空格字符。 我这么做的原因是,如果没有其他字符(除了空格),我想仅替换表情符号。
一些例子:
Hello how are you? //do nothing
// replace emojis
// replace emojis
我正在寻找一个简单的解决方案,也许是一个正则表达式。 谢谢
/^(?:alternative1|alternative2|alternative3)*$/.test(str)
。 - T.J. Crowder