PHP - 清理主题标签的输入,允许阿拉伯语、希伯来语、日语等和表情符号?



我正在研究为主题标签搜索引擎清理输入。

实际上,我想允许所有字母数字字符,西里尔文,阿拉伯语,希伯来语等,以及表情符号字符,但去除除下划线以外的任何符号。

在网上看了一个小时左右后,我还没有找到一个决定性的答案。是否有一个正则表达式可以让我清理这样的输入?基本上删除任何不是字母数字/字母/表情符号的内容。

谢谢!

马克

我基本上会启用Unicode并匹配

/emoji-regex(*SKIP)(?!)|[^p{L}p{Nd}_]+/u

并用什么都没有替换。

有一个负面的类[^ ](意思不是这些(:

p{L}   All letters  
p{Nd}  Number digits  
_       Underscore  

表情符号正则表达式因其大小而被删除。
编辑此答案,并在需要时获取它。

此正则表达式将通过将搜索位置移动到它们之后
跳过表情符号,直到找到包含 1 个或多个Non-Letters/Digits/Underscore字符的块。

最新更新