Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/288.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 删除richtextbox中一行末尾的空白_C#_Regex - Fatal编程技术网

C# 删除richtextbox中一行末尾的空白

C# 删除richtextbox中一行末尾的空白,c#,regex,C#,Regex,如何删除richtextbox行尾的空白 原始字符串 我的代码: string[] lines2 = comparedResultRTB1.Lines; lines2.ToString().Replace("; );",");"); 可以用来做替换。我不确定你到底想做什么。如果您要做的是去除所有新行和出现在它们前面的任何空白,您可以这样做: Regex regex = new Regex(@"\s*\n"); string input = lines2.ToString(); st

如何删除richtextbox行尾的空白

原始字符串

我的代码:

string[] lines2 = comparedResultRTB1.Lines;
lines2.ToString().Replace("; );",");");
可以用来做替换。我不确定你到底想做什么。如果您要做的是去除所有新行和出现在它们前面的任何空白,您可以这样做:

  Regex regex = new Regex(@"\s*\n");
  string input = lines2.ToString();
  string result = regex.Replace(input, "");
添加此行:

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();
}

问题似乎是这里有一个换行符,而不仅仅是空格

这将按预期工作:

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);

是的,我需要摆脱之间的空白;和这不是我要问的;您正在创建一些要执行的DDL。如果有新行,它是否不执行?它应该执行良好。。。因此,空间是否存在有关系吗?我使用这个结果与我的原始结果进行比较。原始结果与上面的“预期结果”相同。我使用数据读取器将DDL写入richtextbox,还使用正则表达式添加分栏;每行。但在添加了每个分栏之后,我原来的结果发生了变化,现在我想删除分栏,只在之后使用;还有什么是一样的?你们在看结果吗?我发布的代码在发布之前已经测试过了。你一定是在错误地实施你身边的事情。
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);