你会如何构造一个C#函数,它在几个字符串并连接/格式它们取决于他们是否是空/空的复杂模式?举例来说,假设我有三个串A,B和C,并希望返回如下:复杂的可选字符串连接和格式在C#
+------+------+---------+---------------------------+
| A | B | C | Result |
+------+------+---------+---------------------------+
| "" | "" | "" | "" |
+------+------+---------+---------------------------+
| "4" | "" | "" | "4p" |
+------+------+---------+---------------------------+
| "8" | "15" | "" | "8 - 15p" |
+------+------+---------+---------------------------+
| "" | "" | "blue" | "blue section" |
+------+------+---------+---------------------------+
| "" | "16" | "red" | "16p, red section" |
+------+------+---------+---------------------------+
| "23" | "42" | "green" | "23 - 42p, green section" |
+------+------+---------+---------------------------+
正如你所看到的,有如果一个特定的元素存在添加一些格式片,其他依赖于多个元素。这是否只需要手动完成,如果语句和连接,或者是否有一些工具可以组装这样的字符串?
在输出字符串为“额外”有明确的规则?如果没有,我不认为有一种通用的方式来做到这一点。如果有......我仍然怀疑有。虽然我会解决它作为一个静态辅助方法或扩展方法。 –
此外,我会*不*建议与if语句做。采用面向对象的方法。构建一堆类和自定义的字符串构建器。 –
上述序列还有其他组合吗?例如,如果A = 4,B =“”,C =“蓝色”呢? – Steve