GetUnescapedString() public method

public GetUnescapedString ( ) : string
return string
コード例 #1
0
        /// <returns>upper-case, empty is possible</returns>
        public virtual string GetAliasUnescapeUppercase()
        {
            if (alias == null || alias.Length <= 0)
            {
                return alias;
            }
            if (aliasUpEscape != null)
            {
                return aliasUpEscape;
            }
            switch (alias[0])
            {
                case '`':
                {
                    return aliasUpEscape = Identifier.UnescapeName(alias, true);
                }

                case '\'':
                {
                    return
                        aliasUpEscape =
                            LiteralString.GetUnescapedString(Runtime.Substring(alias, 1, alias.Length - 1), true);
                }

                case '_':
                {
                    var ind = -1;
                    for (var i = 1; i < alias.Length; ++i)
                    {
                        if (alias[i] == '\'')
                        {
                            ind = i;
                            break;
                        }
                    }
                    if (ind >= 0)
                    {
                        var st = new LiteralString(Runtime.Substring(alias, 0, ind),
                            Runtime.Substring(alias, ind + 1, alias.Length - 1), false);
                        return aliasUpEscape = st.GetUnescapedString(true);
                    }
                    goto default;
                }

                default:
                {
                    return aliasUpEscape = alias.ToUpper();
                }
            }
        }