You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何为现有JavaScript正则表达式新增emoji表情匹配规则?

正则修改方案

原有正则的匹配范围是字母、数字、常用标点和空白,要新增emoji匹配可以按以下方式调整:

核心修改逻辑

  • 向原有字符集中新增emoji匹配规则:\p{Emoji},这是ES2018+支持的Unicode属性转义,可以匹配所有标准emoji表情
  • 正则末尾添加u修饰符,开启Unicode匹配模式,才能正确识别\p语法

修改后完整代码

var letters = /^[0-9A-Za-z\s\-_@#$*!&'’‘”“"?,.:/=+<>~%^ \p{Emoji}]+$/u;

兼容旧环境的备选方案

如果需要兼容不支持u修饰符的低版本JS运行环境,可以手动写入emoji的Unicode范围,修改后的正则如下:

var letters = /^[0-9A-Za-z\s\-_@#$*!&'’‘”“"?,.:/=+<>~%^ \u{1F300}-\u{1F64F}\u{1F680}-\u{1F6FF}\u{1F900}-\u{1F9FF}\u{2600}-\u{26FF}\u{2700}-\u{27BF}]+$/u;

注意:手动写Unicode范围可能存在遗漏新发布emoji的问题,优先推荐使用\p{Emoji}的方案。

内容的提问来源于stack exchange,提问作者Initial Commit

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 14:30:01