2

我无法从以下内容中删除多余的空格:

abc\ae.exe        a 1 b 2%%  ACU > log.txt

我正在使用以下代码删除额外的空格(我在 SO 上找到的):

Regex.Replace(cmdLine, @"^\s*$\n", string.Empty, RegexOptions.Multiline).TrimEnd();

上面的代码正在删除 abc\ae.exe & a fine; 之间的多余空格。但是,它不会从 2%% ACU 中删除额外的空白(中间有两个空格)。

我对 reg 表达式不是很熟悉,但我假设这与 % 符号可能是 reg ex 关键字有关。

任何指导将不胜感激。

4

2 回答 2

5
Regex.Replace(cmdLine,@"\s+"," ");

将用一个空格替换多个空格

+手段_match the character one or more times

这是C# 的正则表达式指南

于 2013-08-07T18:16:25.817 回答
0

如果您想挑选特定的空白字符而不是包含在(Equivalent to )中的所有字符,您也可以使用字符组来完成此操作\s[ \f\n\r\t\v]

string test = @"abc\ae.exe           a 1 b 2%%  ACU > log.txt";
// Replace one more more space characters with a single space
// Add other whitespace characters inside [ ] (ex: \t)
string no_space2 = Regex.Replace(test,@"[ ]+"," ");
于 2013-08-07T19:15:25.233 回答