UGUI如何屏蔽emoji表情

UGUI是不支持emoji表情的,屏蔽的方法也非常简单。

核心语句只有一句:string result = Regex.Replace(strText, @"\p{Cs}", "");//屏蔽emoji 


具体看实际案例:

在一个场景里建立一个InputField输出框和一个text。Text用来显示输入框输入的内容。在Text上加个脚本getsting;然后把InputField里的text拖到这个Text的脚本里。

UGUI如何屏蔽emoji表情_第1张图片


getsting脚本源码:

using UnityEngine;
using System.Collections;
using UnityEngine.UI;
using System.Text.RegularExpressions;

public class getsting : MonoBehaviour {
    public GameObject InputFieldstext;
    string strText;
    // Use this for initialization
    void Start () {
	
	}
	
	// Update is called once per frame
	void Update () {


        strText = InputFieldstext.GetComponent().text;//将输入的内容赋值给strText
        string result = Regex.Replace(strText, @"\p{Cs}", "");//屏蔽emoji       
        this.GetComponent().text= result;
	}
}

测试:

在几个汉字后输入emoji表情

UGUI如何屏蔽emoji表情_第2张图片


下图中,红色的字是Text里的内容,在其下面是输入框输入的内容。那个方块问号就是emoji表情(因为UGUI不识别所以就是如此模样)。由此明显看到emoji表情被屏蔽掉了。

UGUI如何屏蔽emoji表情_第3张图片


你可能感兴趣的:(UGUI)