如何从字符串PHP的开头删除⭕️和♛表情符号?

Posted

技术标签:

【中文标题】如何从字符串PHP的开头删除⭕️和♛表情符号?【英文标题】:How to remove ⭕️ and ♛ emoji from the beginning of the string PHP? 【发布时间】:2018-04-11 19:15:55 【问题描述】:

如何去除php字符串开头的⭕️和♛表情符号? 请注意,我只想删除⭕️和♛表情符号,而不是所有表情符号。

例如:-

如果字符串是⭕️ ABC 123 XYZ 789 ???? 然后从字符串的开头删除表情符号♛后,它应该看起来是ABC 123 XYZ 789 ????

我尝试了preg_replace("⭕️", "", $string) and str_replace("⭕️", "", $string),但根本不起作用。

【问题讨论】:

那么,您尝试了哪些方法,哪些方法不起作用? @WiktorStribiżew 删除字符串与移动一组字符不同,所以我认为重复项不适合。 请参阅链接问题中的$str = preg_replace('/^' . preg_quote($prefix, '/') . '/', '', $str);$prefix(⭕️|♛)。可能需要u 修饰符。 @WiktorStribiżew 或者你只使用trim() :-) 【参考方案1】:

这里不需要正则表达式,只需使用ltrim()

$str = '⭕️ and ♛ emoji from t';
var_dump(ltrim($str, '⭕️♛'));

结果:

string(21)" 和 t 中的♛ emoji"

一个example。

【讨论】:

我确实因为回答一个低质量的问题而被否决了,但是删除一个正确的 - 迄今为止最简单的 - 没有出现在副本中的答案只是愚蠢的。 那肯定不是我的 @FunkFortyNiner 从不怀疑 :-)【参考方案2】:

看起来已经在这里回答了: PHP : writing a simple removeEmoji function

因为它只是这两个表情符号,您只需搜索这两个 unicode(U+265B 和 U+2B55),只需对这些字符进行替换,而不是整个正则表达式。

【讨论】:

您不应该将其标记为可能的重复项吗?你在抄袭现有的问答。 @WiktorStribiżew 这样他们就有剽窃的权利?快点;我想你应该知道这件事。你在这里已经够久了。编辑:你删除了我正在回复的评论。 @FunkFortyNiner 抱歉冒犯了,这不是我的本意。不过有点苛刻,因为我刚刚注意到我现在有能力标记重复的帖子。 没有冒犯。但是你所说的“严厉”是什么意思?顺便说一句,这不是我的反对票。

以上是关于如何从字符串PHP的开头删除⭕️和♛表情符号?的主要内容,如果未能解决你的问题,请参考以下文章

php 如何删除WordPress表情符号代码

有没有办法检查 JS 中的字符串是不是是一个表情符号?

如何从数据框中删除表情符号?

PHP:如何匹配一系列 unicode 配对代理表情符号/表情符号?

python Python正则表达式从字符串中删除表情符号

如何使用 javascript 删除表情符号代码?