我正在开发一个Spring启动聊天应用程序。如何创建正则表达式以实现以下内容,
- 删除特殊字符
- 删除换行符等。
- 接受 Unicode 字符
- 接受表情符号
进一步 数据库表CHARACTER SET
utf8mb4
和COLLATE
utf8mb4_bin
。
-
删除特殊字符
s = s.replaceAll("[\p{P}\p{S}]", "")
-
删除换行符等。
s = s.replaceAll("[\p{C}\p{Zl}\p{Zp}]", "")
-
接受 Unicode 字符
Java 已经这样做了。 -
接受表情符号
表情符号是Unicode字符,所以Java已经这样做了。
总而言之:
s = s.replaceAll("[\p{P}\p{S}\p{C}\p{Zl}\p{Zp}]", "")
有关 Unicode 类别和每个类别中的字符的列表,请参阅 Unicode 字符类别。
使用上述正则表达式,将保留以下类别:L
(字母)、M
(标记)、N
(数字)、Zs
(分隔符、空格)。