C# 如何仅从字符串中删除一些空格?

C# 如何仅从字符串中删除一些空格?,c#,.net,string,C#,.net,String,我有这样一个输出: "Please choose Video #1. Audio #2." 但我期望的输出应该如下所示: "Please choose Video#1. Audio#2." 我尝试使用Replace方法,但它会替换我是否只需要替换一个空格之间的所有空格。请建议我如何实现这个输出。我想提一下,我在这里使用的是C。谢谢。您可以使用一个简单的: 在这种情况下,我更喜欢使用正则表达式,因为它们可以提供更结构化的方式来描述您想要更改的内容: string input = "Please

我有这样一个输出:

"Please choose Video #1. Audio #2."
但我期望的输出应该如下所示:

"Please choose Video#1. Audio#2."
我尝试使用Replace方法,但它会替换我是否只需要替换一个空格之间的所有空格。请建议我如何实现这个输出。我想提一下,我在这里使用的是C。谢谢。

您可以使用一个简单的:


在这种情况下,我更喜欢使用正则表达式,因为它们可以提供更结构化的方式来描述您想要更改的内容:

string input = "Please choose Video #1. Audio #2.";
string pattern = @"(\w+) (#\d+)";
string result = Regex.Replace(input, pattern, "$1$2");

替换为如何?您的示例实际上删除了两个空格,而不是一个空格谢谢您的建议。我真的很感激。我正试着自己做一个。这也起到了作用:`\d+`。这样更容易使用正向前瞻,例如:string output=Regex.Replaceinput,@\s+?=\d+,string.Empty;非常感谢Konrad Kokosa提供的解决方案。
string input = "Please choose Video #1. Audio #2.";
string pattern = @"(\w+) (#\d+)";
string result = Regex.Replace(input, pattern, "$1$2");