用值替换字符串中的字符

问题描述 投票:0回答:4

我有一个字符串,它是写在aspx一侧的一个段落。事情是这样的:

新学生 {student_name} 的成绩如下 -
数学 - {math_grade}
科学 - {Science_grade}
...
等等。

我需要从数据库中获取值,并将

{student_name}
替换为
Joe Smith
{Math_grade}
替换为
A
B+

我该怎么做?

vb.net string replace
4个回答

4
投票
Dim myString As String = "{student_name}"

myString = myString.Replace("{student_name}","Joe Smith")

...请记住始终将您尝试替换值的字符串分配给原始字符串。

myString.Replace("value","newvalue")

...不会替换您的原始字符串值 - 它必须显式分配。例如

myString = myString.Replace("value","newvalue")

0
投票

您当然可以使用 String.Replace,但通常 ASP.NET 应用程序是使用标签作为占位符编写的,然后修改代码隐藏中的值。

所以你的 MyFile.aspx 将包含 新学生 [lblStudentName] 的成绩如下 - 数学 - [lblMathGrade] 科学 - [lblScienceGrade] ...等等

然后在你的MyFile.aspx.cs(或MyFile.aspx.vb)中

this.lblStudentName.Text = "John Doe";
this.lblMathGrade.Text = "A-";
this.lblScienceGrade.Text = "F";

您还可以使用许多其他更好的技术,例如转发器控件,然后将 sql 结果绑定到该控件。


0
投票

.NET Framework 4.6 中引入了字符串插值,这是一种更简洁的处理方式。 您可以在字符串前面添加 $ 符号。

Dim studentName As String = "Joe Smith"
Dim myString As String = $"Hello, {studentName}"
© www.soinside.com 2019 - 2024. All rights reserved.