将字符串拆分为多行

时间:2010-03-16 19:51:30

标签: html asp.net-mvc string split substring

我有一长串评论,我想分成多行。

目前显示为<%= Html.Encode(item.important_notes) %> 我曾经使用.Substring来分割它,但无法弄清楚如何防止它在一个单词的中间分裂。而不是第1行的字符1-100和第2行的101-200,我想在第一行的字符100之前做最后一个空格的字符1。该字符通过第2行的下一个100个字符之前的最后一个空格等。

这样做的最佳方式是什么?

编辑:使用ASP.NET-MVC

2 个答案:

答案 0 :(得分:1)

我会使用substring和lastindexof的组合。你得到最后一个与数字结合的索引,以获得断点后的第一个空格。

StringBuilder sb = new StringBuilder();
while (base.Length > 100)
{
   if (!base.Contains(" ")) { break;
   sb.Append(base.Substring(0, base.Substring(0, 100).LastIndexOf(" ")));
   //code to trim down base
   sb.Append(/*newline*/);
}
sb.Append(base);

写的是adhoc,但你明白了。

答案 1 :(得分:0)

如果不能专门针对您的问题发言,我建议您查看正则表达式。正则表达式能够轻松处理复杂的文本模式。您可能有一个可用的split函数,它只接受这样的正则表达式并返回一个字符串数组。