/// <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); }
/// <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); }
/// <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); }
/// <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); }