我无法从以下内容中删除多余的空格:
abc\ae.exe a 1 b 2%% ACU > log.txt
我使用以下代码删除多余的空格(我在S.O上找到):
Regex.Replace(cmdLine, @"^\s*$\n", string.Empty, RegexOptions.Multiline).TrimEnd();
以上代码删除了abc \ ae.exe&之间的额外空格。罚款;但是,它并没有从2 %% ACU中移除额外的空白区域(中间有两个空格)。
我对reg表达式不是很熟悉,但我认为这与%符号可能是一个注册关键词的事实有关。
非常感谢任何指导。
答案 0 :(得分:5)
Regex.Replace(cmdLine,@"\s+"," ");
将用一个空格替换多个空格
+
表示match the character one or more times
答案 1 :(得分:0)
如果您想要选择特定的空白字符而不是\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,@"[ ]+"," ");