的String.Format。查看是否存在所需的格式

时间:2016-10-19 17:41:58

标签: c# string.format

我需要一个特殊的数字字符串格式。也许有人知道这样的变种,可以帮助我。

算法:

1)如果number is < 0(f.e.-1),那么我需要有string: "-1"

2)如果number is >= 0(f.e。1),那么我需要有string: " 1"

我不需要像“使用if或三元运算符制作”这样的帮助 - 我知道如何做到这一点,但我对现有格式感兴趣。谢谢。

2 个答案:

答案 0 :(得分:2)

您正在寻找的格式就是这个。由于零是特定情况,因此会明确添加。

string numberToString = number.ToString(" #;-#; 0");

答案 1 :(得分:0)

您可以使用

$columns = preg_split('|([+-/*])|', $string_from_form, null, PREG_SPLIT_DELIM_CAPTURE);

$accepted_columns = ['amount_injuries', 'amount_employment', 'health_insurance'];

$columns = array_map(function($x) use ($accepted_columns) {
    if (in_array($x, ['+', '-', '/', '*'])) {
        return $x;
    } else {
        // validate the column; stop if column is invalid
        if (in_array($x, $accepted_columns)) {
            return sprintf('(COALESCE(`%s`,0))', $x);
        } else {
            // handle error
        }
    }
}, $columns);

$columns = implode('', $columns);

我不确定你是否有其他意义。它看起来很简单