我希望在文本必须相同之前用break和spaces替换换行符。 例如:
文字:
这是.net班,有100名学生。
They are able to perform well.
They require certification for career improvement.
这是我需要的相同缩进的上述格式。
我有正则表达式,即lblQuestion.Text = lang.Replace(“\ n”,“
”);
但它只是将文本替换为下一行,但它缺少空格并将输出作为
现在的输出:
这是.net班,有100名学生。
他们能够表现良好。
他们需要获得职业发展认证。
必需的输出:
这是.net班,有100名学生。
They are able to perform well.
They require certification for career improvement.
请帮我解决这个问题。
答案 0 :(得分:0)
您还需要替换每个起始空格而没有中断空格(
),因此浏览器不会collapse the whitespace为单个。
一个简单的替代方法是将输出括在<pre></pre>
元素中(代表预格式化)。
答案 1 :(得分:0)
pre
标记可用于以您希望的方式显示文字,而无需使用br
标记替换换行符。但是,您可能需要设置pre
标记字体的样式,因为某些浏览器的默认字体似乎是单字格空间。
编辑:
假设您正在使用Web窗体,要动态执行此操作,请在aspx标记中定义Literal控件,如下所示:
<pre style="font-family:arial">
<asp:Literal ID="litText" runat="server"></asp:Literal>
</pre>
然后在你的代码隐藏中,设置Literal的Text:
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.";
}