我有一个字符串,里面会有多个空白字符,我想用1个空白字符分隔每个单词。如果字符串是“嗨!我的名字是特洛伊,我喜欢华夫饼!”,我想修剪它,所以它是“嗨!我的名字是特洛伊,我喜欢华夫饼!”。我该怎么做?
答案 0 :(得分:5)
使用正则表达式\s+
(一个或多个空格)和System.Text.RegularExpressions
命名空间中的Regex.Replace
方法:
s = Regex.Replace(s, @"\s+", " ");
如果您只想替换空格,可以将“\s
”更改为空格“”:
s = Regex.Replace(s, @" +", " ");
答案 1 :(得分:3)
string.Join(" ","Hi! My name is troy and i love waffles!"
.Split(new char[]{' '},StringSplitOptions.RemoveEmptyEntries)
.Select (s => s.Trim()))
答案 2 :(得分:1)
试试这个:
var input = "Hi! My name is troy and i love waffles!";
var output = Regex.Replace(input, @"\s{2,}", string.Empty);
Console.WriteLine(output); //Hi! My name is troy and I love waffles!