.NET TIPS

文字列がnull(Nothing)か空文字列かを簡単に判定するには?[2.0のみ、C#、VB]

デジタルアドバンテージ 一色 政彦
2006/08/04

 文字列(=String型のオブジェクト)がnull(C#の場合。Visual BasicではNothing)かどうかをチェックし、さらにnull(Nothing)ではない場合にはそれが空文字列(=長さが0の文字列。「""」あるいは「String.Empty」)かどうかをチェックするというコードは、非常によくあるパターンだ(以降、この一連のチェックを「Null&空文字列チェック」と表現する)。

 .NET Framework 1.xではこのNull&空文字列チェックを実装するには、次のようなコードを書くことが多かっただろう。

if ((checkString != null) && (checkString.Length != 0))
{
  // nullではなく、かつ空文字列でもない
}
else
{
  // null、もしくは空文字列である
}
If (checkString IsNot Nothing) AndAlso (checkString.Length <> 0) Then
  ' nullではなく、かつ空文字列でもない
Else
  ' null、もしくは空文字列である
End If
.NET Framework 1.xでNull&空文字列チェックを行うコード(上:C#、下:VB)

 しかし.NET Framework 2.0ではこのNull&空文字列チェックを容易に実現するための次のメソッドが追加された。

  • String.IsNullOrEmptyメソッド(String)

 String.IsNullOrEmptyメソッドは静的メソッドとして実装されており、パラメータで受け取った文字列がnull(Nothing)もしくは空文字列の場合に戻り値としてTrueを返し、null(Nothing)でも空文字列でもなければFalseを返すという仕様になっている。

 このメソッドを使って上記のコードを書き直したのが次のコードである。

if (String.IsNullOrEmpty(checkString) == false)
{
  // nullではなく、かつ空文字列でもない
}
else
{
  // null、もしくは空文字列である
}
If String.IsNullOrEmpty(checkString) = False Then
  ' nullではなく、かつ空文字列でもない
Else
  ' null、もしくは空文字列である
End If
.NET Framework 2.0でNull&空文字列チェックを行うコード(上:C#、下:VB)

 このようにString.IsNullOrEmptyメソッドを使うことで、Null&空文字列チェックをシンプルに記述できる。End of Article

カテゴリ:クラス・ライブラリ 処理対象:文字列

この記事と関連性の高い別の.NET TIPS
文字列がnull(Nothing)か空文字列か「空白か」を簡単に判定するには?
文字列に特定の文字列が含まれているかを調べるには?
文字列に特定の文字列が含まれているかを調べるには?(Contains編)
文字列の全角/半角をチェックするには?
文字列から特定の文字列を取り除くには?
このリストは、(株)デジタルアドバンテージが開発した
自動関連記事探索システム Jigsaw(ジグソー) により自動抽出したものです。
generated by

「.NET TIPS」

更新履歴
【2006/8/5】本記事の一部に以下のような誤りがありました。お詫びして訂正させていただきます。

String.IsNullOrEmptyメソッドは静的メソッドとして実装されており、パラメータで受け取った文字列がnull(Nothing)もしくは空文字列の場合に戻り値としてFalseを返し、null(Nothing)でも空文字列でもなければTrueを返すという仕様になっている。
String.IsNullOrEmptyメソッドは静的メソッドとして実装されており、パラメータで受け取った文字列がnull(Nothing)もしくは空文字列の場合に戻り値としてTrueを返し、null(Nothing)でも空文字列でもなければFalseを返すという仕様になっている。

TechTargetジャパン

Insider.NET フォーラム 新着記事

@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

RSSフィード

キャリアアップ

- PR -
@IT Sepcial

イベントカレンダー

PickUpイベント

- PR -
もっと見る
- PR -

お勧め求人情報

ホワイトペーパーTechTargetジャパン

@IT Sepcial
ソリューションFLASH