gpt4 book ai didi

java - 保留表情符号,Java Regex

转载 作者:行者123 更新时间:2023-12-01 15:29:16 24 4
gpt4 key购买 nike

我有一个程序可以过滤字符串并保留英文字符和表情符号。我正在尝试获取一个正则表达式,它保留 :) 、 :D 、 :( 等表情符号,但取出单个 ':' 或 '(' 或 ')' ...基本上我想要 ':' 和 ')'否则我需要过滤它们......在我的程序中,我可以保留表情符号,但我也得到 : 和 ) 连同它......你能帮我吗?

String pattern = "[^\\w^\\s^(:))]";
Pattern p = Pattern.compile(pattern);
Matcher m = p.matcher(text);
text = m.replaceAll("");

感谢您的帮助。

最佳答案

您尝试在方括号内使用分组括号。这不起作用,因为方括号内的括号失去了其特殊含义。

方括号定义 character class这是一个atom ,不是原子序列。相反,您应该简单地使用两分支替代方案:一个用于 :,另一个用于括号、D 等,并使用 look-ahead and look-behind在每个分支。

您可以找到有关正则表达式语法的更多信息 here .

此外,您可以考虑使用更复杂的表情符号,例如 :-)

关于java - 保留表情符号,Java Regex,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9762404/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com