-2

我想在文本必须相同之前用换行符和空格替换新行。例如:

文本:

这是一个有 100 名学生的 .net 课程。

 They are able to perform well.

      They require certification for career improvement.

这是我需要相同缩进的上述格式。

我有正则表达式,即 lblQuestion.Text = lang.Replace("\n", "
"); 但它仅将文本替换到下一行,但它缺少空格并给我输出

目前的输出:

这是一个有 100 名学生的 .net 课程。

他们能够表现出色。

他们需要获得职业提升认证。

所需输出:

这是一个有 100 名学生的 .net 课程。

 They are able to perform well.

      They require certification for career improvement.

请帮助我。

4

2 回答 2

0

标签可用于以您想要的方式显示文本,而无需用标签pre替换换行符。br但是,您可能需要设置pre标签字体的样式,因为某些浏览器的默认字体似乎是单空格。

编辑:

假设您使用的是 Web 窗体,要动态执行此操作,请在您的 aspx 标记中定义一个 Literal 控件,如下所示:

<pre style="font-family:arial">
<asp:Literal ID="litText" runat="server"></asp:Literal>
</pre>

然后在您的代码隐藏中,设置文字的文本:

protected void Page_Load(object sender, EventArgs e)
{
    litText.Text = @"This is .net class with 100 students.
    They are able to perform well.
        They require certification for career improvement.";
}
于 2013-04-26T11:36:35.140 回答
0

您还需要将每个起始空格替换为不带分隔符的空格 ( &nbsp;),因此浏览器不会将空格折叠成一个空格。

一个简单的替代方法是将输出包含在<pre></pre>元素中(代表预格式化)。

于 2013-04-26T11:28:30.333 回答