我试图从转发器中的字符串中删除指定的字/行并剪切字符串的长度
public static string CutTextLength(string text)
{
if (text.Length > 400)
{
text = text.Substring(0, 400) + "...";
Regex.Replace(text, "<br />", "");
}
return text;
}
<div class="JobContent"><%#CutTextLength(Eval("Text").ToString()) %></div>
运行此代码时,我只是减少了字符串的长度,但没有删除所有&lt;&#34; br /&#34;&gt;字符串中的标签。 任何人都可以帮我解决我的问题吗?
答案 0 :(得分:3)
你应该这样做:
text = Regex.Replace(text, "<""br /"">", "");
因为Replace
不会更改文字,但会返回包含替换内容的新字符串。
修改强>
在仔细阅读您的问题后,我发现您要删除<"br /">
。上面更新的声明应该可以胜任。
答案 1 :(得分:1)
字符串是不可变的 - 创建对象后,字符串对象的内容无法更改,尽管语法使其看起来好像可以这样做。
您可以尝试使用字符串:
text = text.Replace("<br />", "");
如果你想使用正则表达式。这应该有效<br\s*[\/]?>
static void Main(string[] args)
{
string text = @"This text with <br />, <br > ";
text = Regex.Replace(text, @"<br\s*[\/]?>", "A");
Console.WriteLine(text);
}