如何从富文本框中的行尾删除空格
原始字符串
我的代码:
string[] lines2 = comparedResultRTB1.Lines;
lines2.ToString().Replace("; );",");");
添加这一行:
lines2 = lines2.Select(o => o.Trim()).ToArray();
所以你的代码变成了这样:
string[] lines2 = comparedResultRTB1.Lines;
lines2 = lines2.Select(o => o.Trim()).ToArray();
lines2.ToString(); // I'm assuming there is supposed to be an assignment here
如果您不想使用 LINQ,可以使用此方法:
string[] TrimLines(string[] lines) {
var trimmedLines = new List<string>();
foreach(var line in lines) {
trimmedLines.Add(line.TrimEnd());
}
return trimmedLines.ToArray();
}
在这种情况下,您的代码将变为:
string[] lines2 = comparedResultRTB1.Lines;
lines2 = TrimLines(lines2);
lines2.ToString(); // I'm assuming there is supposed to be an assignment here
问题似乎是你在那里有一个换行符,而不仅仅是空格。
这按预期工作:
var text = "ALTER TABLE \"TBLCONCESSIONAIREOFFICES\" ADD (\"CNCO_IRISAUTOCONFIRMINVOICE\" NUMBER(" +
"2,0) DEFAULT 0 --0: No, 1: Yes; \r\n);";
var splitted = text.Split(new[] { Environment.NewLine }, StringSplitOptions.RemoveEmptyEntries).Select(a => a.Trim());
var result = String.Concat(splitted);
可以使用正则表达式进行替换。从问题中不确定您到底想做什么。如果您想要做的是摆脱所有新行和出现在它们之前的任何空白,您可以这样做:
Regex regex = new Regex(@"\s*\n");
string input = lines2.ToString();
string result = regex.Replace(input, "");