写一个正则 不支持emoji表情和异常特殊字符:’ n t w & = ? +
/^[^\u{1F000}-\u{1F6FF}\u{1F900}-\u{1F9FF}\u{2600}-\u{27FF}\u{1F680}-\u{1F6FF}'"\n\t\w&=?{}+%)]*$/u
解释:
-
^ 表示匹配字符串的开始位置
-
[^\u{1F000}-\u{1F6FF}\u{1F900}-\u{1F9FF}\u{2600}-\u{27FF}\u{1F680}-\u{1F6FF}'"\n\t\w&=?{}+%)] 表示除了特殊字符之外的所有字符
-
- 表示匹配前面的表达式 0 次或多次
-
$ 表示匹配字符串的结束位置
其中,\u{1F000}-\u{1F6FF}、\u{1F900}-\u{1F9FF}、\u{2600}-\u{27FF}、\u{1F680}-\u{1F6FF} 是 Unicode 编码中 emoji 表情的范围,因此通过排除这些范围内的字符来实现不支持 emoji 表情的效果。同时,特殊字符包括 ’ ” \ \n \t \w & = ?{ } + %),也需要被排除。
原文地址: https://www.cveoy.top/t/topic/hcaZ 著作权归作者所有。请勿转载和采集!