首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何对字符串进行插值?

如何对字符串进行插值?
EN

Stack Overflow用户
提问于 2012-02-20 06:59:11
回答 12查看 54K关注 0票数 112

我想在C#中做以下事情(来自Python背景):

strVar = "stack"
mystr  = "This is %soverflow" % (strVar)

如何将字符串内部的标记替换为字符串外部的值?

EN

回答 12

Stack Overflow用户

回答已采纳

发布于 2012-02-20 07:00:35

string mystr = string.Format("This is {0}overflow", strVar);

您也可以使用named parameters而不是索引。

票数 85
EN

Stack Overflow用户

发布于 2012-02-20 07:10:00

您可以使用string.Format将值放入字符串中:

private static readonly string formatString = "This is {0}overflow";
...
var strVar = "stack";
var myStr = string.Format(formatString, "stack");

另一种方法是使用C#连接运算符:

var strVar = "stack";
var myStr = "This is " + strVar + "overflow";

如果您正在进行大量的连接,请使用StringBuilder类,它更高效:

var strVar = "stack";
var stringBuilder = new StringBuilder("This is ");
for (;;)
{
    stringBuilder.Append(strVar); // spot the deliberate mistake ;-)
}
stringBuilder.Append("overflow");
var myStr = stringBuilder.ToString();
票数 14
EN

Stack Overflow用户

发布于 2015-01-19 09:36:22

如果您当前使用Visual Studio2015和C# 6.0,请尝试以下操作:

var strVar = "stack";

string str = $"This is {strVar} OverFlow";

这个特性叫做字符串插值。

票数 12
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9354154

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档