[英]Interpolation string from variable c#
我试图在C#中内插两个字符串组合而成的字符串。 我在VS 2015中有以下代码:
DateTime date = DateTime.Now;
string username = "abc";
string mask = "{date:yy}/{username}";
我想要的结果是:
18/abc
我知道我可以像这样插值:
mask = $"{date:yy}/{username}"
但是遮罩也是输入。 所以我需要这样的东西:
string result = $"{mask}"
但结果是:
"{date:yy}/{username}"
掩码实际上是从数据库下载的,在每种情况下,信息序列可能会有所不同。 我需要将整个掩码存储在db中,并且仅在代码中对其进行补充。 我不能像这样使用String.Replace()方法
mask.Replace({date}, date.ToString())
因为我需要添加诸如:yy,:yyyy,:dd等的格式。
有可能这样做吗?
string mask = string.Format("{0:yy}/{1}", date, username);
string mask = $"{date:yy}/{username}";
您可以为此使用string.Format()
:
string mask = GetMaskFromDB(); //assume it returns "{0}/{1:yy}"
string username = "abc";
DateTime dt = DateTime.Now;
var result = string.Format(mask, username, dt);
结果:“ abc / 18”
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.