如何在 C sharp 中创建一个从字符串中删除空格的函数? ?.

本文关键字:字符串 一个 删除 空格 函数 sharp 创建 | 更新日期: 2023-09-27 18:17:48

我真的很想在这里得到一点帮助。所以我想在 C Sharp 中创建一个函数来检查字符串中的空格(在乞丐、中间、结尾(,但我不知道如何处理这个问题!:(

如何在 C sharp 中创建一个从字符串中删除空格的函数? ?.

一种方法是

"Any string with spaces".Replace(" ", string.Empty);

试试这个:

string str = "This is an example";
string str2 = str.Replace(" ","");
string pp = "12. Twi  iter    ";
      pp = pp.Replace(" ", "");

使用正则表达式来处理它 - 编写起来很简单,不仅可以处理空格。

var stringWithoutWhiteSpace = Regex.Replace(str, @"'s*", string.Empty)

但请注意,通常最好使用特定模式缓存Regex,因为构建它需要一些时间,因此如果将其多次使用,将其保存在单独的静态变量中可能是个好主意,如下所示:

public static class StringExtensions {
    public static WhiteSpaceRegex = new Regex(@"'s*");
    public static string WithoutWhitespace(this string input) 
    {
        return WhiteSpaceRegex.Replace(input, string.Empty);
    }
}
你可以

这样做:

var input = "this is a test";
var output = new string(input.Where(c => !char.IsWhiteSpace(c)).ToArray());
System.Console.WriteLine(output); // thisisatest

或者这个:

var output = string.Join(string.Empty, input.Where(c => !char.IsWhiteSpace(c)));

如果您只想检查字符串是否包含任何空格字符,请执行以下操作:

var hasWhiteSpace = input.Any(c => !char.IsWhiteSpace(c));

尝试正则表达式

string pp = "12. Twi  iter    ";
string s1 = Regex.Replace(pp, @"[ ]", "");
 Trim()
 TrimLeft()
 TrimRight()
String X=" Abc Def " ;
STring leftremoved = TrimLeft(x) ;
String rightremoved = TrimRight(x) ;
and use forloops to find for the middel space like by converting into charArray
rightRemoved.toCharArray();
int count = 0;
Char[] result ;
foreach(char s in rightremove.toCharArray())
{
if(s=='')
{
continue;
}
else
{
result[count] = s;
}
count ++;
}

做了一个类似...

public string clearSpace(string strParam)
{
  string s = strParam.Trim();
  s.Replace(" ","");
  return s;
}

你可以像这样使用这个函数。

string s = " hey    who    am   i  ?   ";
string s2=clearSpace(s);

像这样使用 String.TrimEndString.TrimStartString.Contains 怎么样?

string s = " SomeRandom Words";
Console.WriteLine("Does Whitespace at the end? {0}", s != s.TrimEnd());
Console.WriteLine("Does Whitespace at the begining? {0}", s != s.TrimStart());
Console.WriteLine("Does Contains whitespace? {0}", s.Contains(" "));

输出将是;

Does Whitespace at the end? False
Does Whitespace at the begining? True
Does Contains whitespace? True

这里有一个DEMO.

String 类有一个名为 Rereplace 的方法。看看吧。它可以用空字符串代替空格,实现您想要的。另一方面,Trim 方法只会从字符串的开头和结尾删除空格。也可能对你有所帮助。还有一些方法可以只修剪字符串的开头或结尾。

  • 如果只想从开头删除空格,请使用 修剪开始;
  • 如果要从末尾删除空格,请使用 修剪结束;
  • 如果您想删除开头和结尾的空格,Trim 会这样做;
  • 如果你只想从中间删除,你必须想出一些逻辑来删除所有空格,然后在开头和结尾重新插入这些空格。