放一个
在一些文本后面加上标签

本文关键字:文本 标签 一个 br | 更新日期: 2023-09-27 18:13:41

我有一个变量str,它有一些文本。我只是在我的UI上显示这个文本。但是我有一个条件,假设这个变量有500个单词,所以我需要在每50个单词后面放一个
标签。

我该怎么做呢?

下面是我的c#代码,通过它我发送邮件作为html

Emailbody += " <tr>";
Emailbody += " <td align='left' valign='Top' nowrap><span class=style17>Purpose of     travel</span></td>";
Emailbody += "<td align='center' valign='Top'>:</td>";
Emailbody += " <td align='left' valign='Top'><span class=style17>&nbsp;&nbsp;" + TextBox1.Text +     "</span></td>";
Emailbody += " <td>&nbsp;</td>";
Emailbody += "  <td align='left' nowrap'><span class=style17>Advance</span></td>";
Emailbody += " <td align='center'>:</td>";
Emailbody += "<td align='left' nowrap><span class=style17>"+TextBox2.Text+"</td>";
Emailbody += " </tr>";

我需要mt TextBox1的解决方案。文本

放一个<br />在一些文本后面加上标签

如果你正在使用c#,那么你可以这样做:

    public string SplitLine(string input)
    {
        var wordList = input.Split(' ');
        var sb = new StringBuilder();
        for (int index = 0; index < wordList.Length; index++)
        {
            if(index % 50 == 0 && index > 0)
                sb.Append("<br/>" + wordList[index]);
            else
                sb.Append(wordList[index] + ' ');
        }
        return sb.ToString();
    }

使用javascript如下:

var count=0;
for(var i=0;i<str.length;i++)
{

  if((str[i])=="")
  {
    count++;
    if(count==50)
    {
      str[i]="<br/>"
      count=0;
    }
  }
}

我想你想在c#中做到这一点?

看一下可能的复制品。给定的函数允许您指定而不是字符或单词的数量,以像素为单位的行宽,并使用字体和字体大小计算适当的长度。您必须使其适应您的HTML输出,但其余部分保持不变。

你可以这样使用List:

List<string> lines = WrapText(TextBox1.Text, 300, "Calibri", 11);
string longText = string.Empty
foreach (var item in lines)
{
    longText += item + "</br>";
}
Emailbody += " <tr>";
Emailbody += " <td align='left' valign='Top' nowrap><span class=style17>Purpose of travel</span></td>";
Emailbody += "<td align='center' valign='Top'>:</td>";
Emailbody += " <td align='left' valign='Top'><span class=style17>" + longText + "</span></td>";
Emailbody += " <td>&nbsp;</td>";
Emailbody += "  <td align='left' nowrap'><span class=style17>Advance</span></td>";
Emailbody += " <td align='center'>:</td>";
Emailbody += "<td align='left' nowrap><span class=style17>"+TextBox2.Text+"</td>";
Emailbody += " </tr>";