private bool FilterNode(GameObject obj, PathNode node)
        {
            if (obj == null || !obj.activeInHierarchy)
            {
                return(false);
            }

            if (!String.IsNullOrEmpty(node.regex))
            {
                if (!System.Text.RegularExpressions.Regex.IsMatch(obj.name, node.regex))
                {
                    return(false);
                }
            }
            else if (node.name != null && !node.name.Equals("*"))
            {
                if (!obj.name.Equals(node.name))
                {
                    return(false);
                }
            }
            if (!String.IsNullOrEmpty(node.img))
            {
                List <string> img = uiHelper.GetInChildrenImages(obj);
                if (!img.Contains(node.img))
                {
                    return(false);
                }
            }

            if (!String.IsNullOrEmpty(node.txt))
            {
                List <string> txts = uiHelper.GetInChildrenTexts(obj);
                if (!txts.Contains(node.txt))
                {
                    return(false);
                }
            }
            return(true);
        }