PS:本文仅限个人笔记,仅供参考
更新自:2022-05-13
Public void IsRegex(string InputContent)
{
string match = (@"^[\u4E00-\u9FA5A-Za-z0-9 ~!@#$%^&*()_\-+=<>?:{ } |,.\/; '\\[\]·~!@#¥%⋯⋯&*()——\-+={}|《》?:“”【】、;‘',。、\u0022]+$");
List<string> patten = new List<string>() { @"\p{Cs}", @"\p{Co}", @"\p{Cn}", @"[\u2702-\u27B0]" };
bool isRegex = System.Text.RegularExpressions.Regex.IsMatch(InputContent, match);
if (!isRegex)
{
try
{
//屏蔽emoji
for (int i = 0; i < patten.Count; i++)
{
InputContent = Regex.Replace(InputContent, patten[i], "");//屏蔽emoji
}
catch (Exception e)
{
Debug.LogError("正则输入异常:" + e.Message);
}
}
}
说明: 正则表达式是没有问题的,在ios平台和Android平台过滤表现不一致。