所以我试图从<替换所有文本聊天直到> char因为颜色标签等...
我刚试过这段代码:
while (text.Contains("<") || text.Contains(">"))
{
text = text.Remove(text.IndexOf("<"), text.IndexOf(">"));
}
为什么这段代码不起作用。 谢谢你的帮助!
答案 0 :(得分:1)
函数Remove
有两个参数 startIndex 和 count 。其中 count 是要删除的字符数。
public string Remove(
int startIndex,
int count
)
您需要计算从<
到>
的距离,并将该距离用作Remove
的第二个参数。代码看起来像这样:
while (text.Contains("<") || text.Contains(">"))
{
var start = text.IndexOf("<");
var end = text.IndexOf(">") + 1;
var dist = end - start;
text = text.Remove(start, dist);
}
注意:您应该添加一些额外的检查,确保<
和>
符合预期的顺序,并且它们的次数相同。