2015-01-20 124 views
-5

我想知道如果一個字符串中有任何非空白字符 - 所以如果它是而不是空或只是充滿空格或製表符。我厭倦了這樣做:確定字符串是否有值的最簡潔的方法是什麼?

if(!String.IsNullOrWhitespace(something)) 

這沒什麼錯,它只是冗長的。

這工作(因爲字符串是簡單的字符數組)...

something.Any() 

...但它打破如果變量是NULL(而不會考慮空格)。

我知道我可以爲此編寫一個擴展方法,但我覺得應該在覈心C#庫中有一些我只是缺少的東西。

+1

你可以寫一個片段。嚴重的是,第一行有什麼問題?語義上非常清楚。當然,它有很多字符,但許多英文單詞/短語也是如此。 – BradleyDotNET 2015-01-20 23:25:26

+0

它沒有問題,它只是冗長的。 – Deane 2015-01-20 23:26:00

+2

String.IsNullOrEmpty ... – Gilad 2015-01-20 23:27:41

回答

3

你不會錯過任何東西。我的建議是一個擴展方法:

public static class StringExtensions 
{ 
    public static bool HasValue(this string value) 
    { 
     return !string.IsNullOrEmpty(value); 
    } 
} 

用法:

if (myString.HasValue()) ... 
+0

這將在其他任何地方引起混淆,因爲只包含空格的字符串仍然有一個值並且可能對......而言是有效的值)。 – Deduplicator 2015-01-20 23:29:35

+1

@Deduplicator哈,沒有考慮到這一點。也許更好的名字是爲了。或者讓它使用'IsNullOrEmpty'。我會更新這個例子。 – Haney 2015-01-20 23:31:36

相關問題