前端如何过滤emoji表情
目前emoji表情无处不在,不管是app还是pc端的网站,都会见到emoji表情的身影,主要还是由于能快速而且适当的表现情绪或者状态,没有文字那么冷冰冰,多了一些温暖。
那么在开发中可能会出现需要处理emoji表情的情况,一般是用户在发送emoji消息后,接口需要将对应的unicode编码存储在数据库,前端页面显示的时候,需要将emoji正常显示出来,但是对于有些场景,比如一些用户反馈表单,只需要用户填有价值的内容,包括图片文字,而像emoji表情则需要过滤,那么这个时候前端可以只用以下方法在录入的时候就进行过滤。
function filterEmoji(evaluateData){
var ranges = [
'\ud83c[\udf00-\udfff]',
'\ud83d[\udc00-\ude4f]',
'\ud83d[\ude80-\udeff]'
];
evaluateData = evaluateData .replace(new RegExp(ranges.join('|'), 'g'), '');
return evaluateData;
}
filterEmoji("?")
执行以上代码后,可以发现如果内容包含emoji表情,则在提交的时候会把它替换为空字符串,这样对于数据存储就少了一点麻烦了。
发表评论 (审核通过后显示评论):