1. C# / Говнокод #17386

    +135

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    /// <summary>
    /// Converts to number.
    /// </summary>
    /// <param name="value">The value.</param>
    /// <returns>System.String.</returns>
    public static string convertToNumber(string value) {
        string mvalue = "0";
        string wildchars = @"~!@#$%^&*()_+={}[]|\/?><,`:;'";
        bool chknegative = false;
    	if (value == null)
    		value = "";
        try {
            if (value == "") {
                mvalue = "0";
            }
            for (var i = 0; i < wildchars.Length; i++) {
                string wildchar = wildchars.Substring(i, 1);
                //chknegative = value.Contains(wildchar);
                mvalue = value.Replace(wildchar, "");
                value = mvalue;
            }
    
    
            chknegative = value.Contains("-");
    
            if (chknegative) {
                mvalue = value.Replace("-", "");
                mvalue = "-" + mvalue;
            }
            else {
                mvalue = value;
            }
        }
        catch {
            mvalue = "0";
        }
        return mvalue;
    }

    Запостил: barsv, 29 Декабря 2014

    Комментарии (4) RSS

    • Тут даже регуляркой (с сохранением оригинальной логики) не перепишешь.
      Ответить
    • Прокачанная версия.

      public static string ConvertToNumber(string value)
      {
          var signed = value.FirstOrDefault() == '-';
      
          return (signed ? "-" : String.Empty) + Regex.Replace(
              signed ? new string(value.Skip(1).ToArray()) : value,
              @"[^\d\.]",
              String.Empty);
      }
      Ответить
    • Я подал GUID в функцию - получил многа букффф ;) Хороший, качественный говнокод!
      Ответить
      • Подайте этому мсье тарелку свежих GUID'ов
        Ответить

    Добавить комментарий