C# 检查字符串之间(或任意位置)是否有空格

C# 检查字符串之间(或任意位置)是否有空格,c#,C#,有没有办法确定字符串中是否有空格 sossjjs-sskkk应返回true,sskskjsk应返回false “sssss”.Trim().Length似乎不起作用。如果确实要查看字符串是否包含实际的空格字符(如标题所述),而不是任何其他类型的空格字符,则可以使用: string s = "Hello There"; bool fHasSpace = s.Contains(" "); 如果您正在寻找检测空白的方法,下面有几个很好的选项。Trim()只会删

有没有办法确定字符串中是否有空格

sossjjs-sskkk
应返回
true
sskskjsk
应返回false


“sssss”.Trim().Length
似乎不起作用。

如果确实要查看字符串是否包含实际的空格字符(如标题所述),而不是任何其他类型的空格字符,则可以使用:

string s = "Hello There";
bool fHasSpace = s.Contains(" ");
如果您正在寻找检测空白的方法,下面有几个很好的选项。

Trim()
只会删除前导或尾随空格

尝试检查字符串是否包含空格

"sossjjs sskkk".Contains(" ") // returns true

当您想要测试任何空白字符而不仅仅是空格时,也可以使用正则表达式来实现这一点

var text = "sossjj ssskkk";
var regex = new Regex(@"\s");
regex.IsMatch(text); // true

这个函数应该可以帮助您

bool isThereSpace(String s){
    return s.Contains(" ");
}
那么:

myString.Any(x => Char.IsWhiteSpace(x))
或者,如果您喜欢使用“方法组”语法:


String.Contains(“”)对您不起作用吗?请不要发布关于同一事物的多个问题。您还提出了重复问题,其中有使用
Contains
IndexOf
解决此问题的示例。(忽略最后一个答案…)对检测所有类型的空格都很有用:可以缩短为
if(myString.Any(Char.IsWhiteSpace))
,并且可读性稍高。这确实应该是公认的答案,目前还不知道有多少奇怪的空白字符,这将适用于所有.NETunderstands@DougSeelingerResharper真的能创造奇迹;)我认为这是一个非常好的答案(
+1
来自我!),但我不认为这比我自己的答案更正确。问题是如何判断字符串中是否有空格,而不是如何判断字符串是否包含空格。例如,“Hello\tthere”不包含空格,但它确实包含空格字符。您还可以使用static
Regex.IsMatch(text,@“\s”)
如果要进行大量比较,则值得使用实例版本,但对于一般情况,使用static
Regex.IsMatch()
已经足够了。对于试图不使用魔术字符串的人来说,这不是一个解决方案。这确实是最好的解决方案,检查空格所需做的就是使用if-then语句。这个解决方案不考虑其他空格字符,如Tab、CR、LF等。
myString.Any(Char.IsWhiteSpace)