Ejemplo n.º 1
0
        /// <summary>
        /// Is
        /// </summary>
        /// <param name="str"></param>
        /// <param name="charAct"></param>
        /// <returns></returns>
        public static bool Is(string str, Action <char> charAct = null)
        {
            if (string.IsNullOrWhiteSpace(str))
            {
                return(false);
            }
            var result = char.TryParse(str, out var c);

            if (!result)
            {
                result = ValueDeterminer.IsXxxAgain <char>(str);
            }
            if (result)
            {
                charAct?.Invoke(c);
            }
            return(result);
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Is
        /// </summary>
        /// <param name="str"></param>
        /// <param name="booleanAct"></param>
        /// <returns></returns>
        public static bool Is(string str, Action <bool> booleanAct = null)
        {
            if (string.IsNullOrWhiteSpace(str))
            {
                return(false);
            }
            var result = bool.TryParse(str, out var boolean);

            if (!result)
            {
                result = ValueDeterminer.IsXxxAgain <bool>(str);
            }
            if (result)
            {
                booleanAct?.Invoke(boolean);
            }
            return(result);
        }
Ejemplo n.º 3
0
        /// <summary>
        /// Is
        /// </summary>
        /// <param name="str"></param>
        /// <param name="style"></param>
        /// <param name="formatProvider"></param>
        /// <param name="floatAct"></param>
        /// <returns></returns>
        public static bool Is(string str, NumberStyles style = NUMBER_STYLES,
                              IFormatProvider formatProvider = null, Action <float> floatAct = null)
        {
            if (string.IsNullOrWhiteSpace(str))
            {
                return(false);
            }
            var result = float.TryParse(str, style, formatProvider.SafeNumber(), out var number);

            if (!result)
            {
                result = ValueDeterminer.IsXxxAgain <float>(str);
            }
            if (result)
            {
                floatAct?.Invoke(number);
            }
            return(result);
        }
Ejemplo n.º 4
0
        /// <summary>
        /// Is
        /// </summary>
        /// <param name="str"></param>
        /// <param name="style"></param>
        /// <param name="formatProvider"></param>
        /// <param name="byteAct"></param>
        /// <returns></returns>
        public static bool Is(string str, NumberStyles style = NumberStyles.Integer,
                              IFormatProvider formatProvider = null, Action <sbyte> byteAct = null)
        {
            if (string.IsNullOrWhiteSpace(str))
            {
                return(false);
            }
            var result = sbyte.TryParse(str, style, formatProvider.SafeNumber(), out var number);

            if (!result)
            {
                result = ValueDeterminer.IsXxxAgain <sbyte>(str);
            }
            if (result)
            {
                byteAct?.Invoke(number);
            }
            return(result);
        }
        /// <summary>
        /// Is
        /// </summary>
        /// <param name="str"></param>
        /// <param name="style"></param>
        /// <param name="formatProvider"></param>
        /// <param name="dtAct"></param>
        /// <returns></returns>
        public static bool Is(string str,
                              DateTimeStyles style           = DateTimeStyles.None,
                              IFormatProvider formatProvider = null,
                              Action <DateTimeOffset> dtAct  = null)
        {
            if (string.IsNullOrWhiteSpace(str))
            {
                return(false);
            }
            var result = DateTimeOffset.TryParse(str, formatProvider.SafeDateTime(), style, out var dateTimeOffset);

            if (!result)
            {
                result = ValueDeterminer.IsXxxAgain <DateTimeOffset>(str);
            }
            if (result)
            {
                dtAct?.Invoke(dateTimeOffset);
            }
            return(result);
        }