String.IsNullOrEmpty(String) メソッド

定義

指定された文字列が null または空の文字列 ("") であるかどうかを示します。Indicates whether the specified string is null or an empty string ("").

public:
 static bool IsNullOrEmpty(System::String ^ value);
public static bool IsNullOrEmpty (string value);
static member IsNullOrEmpty : string -> bool
Public Shared Function IsNullOrEmpty (value As String) As Boolean

パラメーター

value
String

テストする文字列。The string to test.

戻り値

true パラメーターが value または空の文字列 ("") の場合は null。それ以外の場合は falsetrue if the value parameter is null or an empty string (""); otherwise, false.

次の例では、3つの文字列を調べて、各文字列に値があるか、空の文字列であるか、または nullかどうかを判断します。The following example examines three strings and determines whether each string has a value, is an empty string, or is null.

using namespace System;
String^ Test( String^ s )
{
   if (String::IsNullOrEmpty(s))
      return "is null or empty";
   else
      return String::Format( "(\"{0}\") is neither null nor empty", s );
}

int main()
{
   String^ s1 = "abcd";
   String^ s2 = "";
   String^ s3 = nullptr;
   Console::WriteLine( "String s1 {0}.", Test( s1 ) );
   Console::WriteLine( "String s2 {0}.", Test( s2 ) );
   Console::WriteLine( "String s3 {0}.", Test( s3 ) );
}
// The example displays the following output:
//       String s1 ("abcd") is neither null nor empty.
//       String s2 is null or empty.
//       String s3 is null or empty.
string s1 = "abcd";
string s2 = "";
string s3 = null;

Console.WriteLine("String s1 {0}.", Test(s1));
Console.WriteLine("String s2 {0}.", Test(s2));
Console.WriteLine("String s3 {0}.", Test(s3));

String Test(string s)
{
if (String.IsNullOrEmpty(s)) 
    return "is null or empty";
else
    return String.Format("(\"{0}\") is neither null nor empty", s);
}

// The example displays the following output:
//       String s1 ("abcd") is neither null nor empty.
//       String s2 is null or empty.
//       String s3 is null or empty.
Class Sample
   Public Shared Sub Main()
      Dim s1 As String = "abcd"
      Dim s2 As String = ""
      Dim s3 As String = Nothing
      
      Console.WriteLine("String s1 {0}.", Test(s1))
      Console.WriteLine("String s2 {0}.", Test(s2))
      Console.WriteLine("String s3 {0}.", Test(s3))
   End Sub
   
   Public Shared Function Test(s As String) As String
      If String.IsNullOrEmpty(s) Then
         Return "is null or empty"
      Else
         Return String.Format("(""{0}"") is neither null nor empty", s)
      End If
   End Function 
End Class  
' The example displays the following output:
'       String s1 ("abcd") is neither null nor empty.
'       String s2 is null or empty.
'       String s3 is null or empty.

注釈

IsNullOrEmpty は、Stringnull か、その値が String.Emptyかどうかを同時にテストできる便利なメソッドです。IsNullOrEmpty is a convenience method that enables you to simultaneously test whether a String is null or its value is String.Empty. これは、次のコードと同じです。It is equivalent to the following code:

result = s == nullptr || s == String::Empty;
bool TestForNullOrEmpty(string s)
{
    bool result;
    result = s == null || s == string.Empty;
    return result;
}

string s1 = null;
string s2 = "";
Console.WriteLine(TestForNullOrEmpty(s1));
Console.WriteLine(TestForNullOrEmpty(s2));

// The example displays the following output:
//    True
//    True
result = s Is Nothing OrElse s = String.Empty

IsNullOrWhiteSpace メソッドを使用して、文字列が nullか、その値が String.Emptyか、または空白文字だけで構成されているかをテストできます。You can use the IsNullOrWhiteSpace method to test whether a string is null, its value is String.Empty, or it consists only of white-space characters.

Null 文字列とは何ですか。What is a null string?

値 ( C++および Visual Basic) が割り当てられていない場合、または明示的に nullの値が割り当てられている場合は、文字列が null されます。A string is null if it has not been assigned a value (in C++ and Visual Basic) or if it has explicitly been assigned a value of null. 次の例に示すように、複合書式指定機能は null 文字列を適切に処理できますが、メンバーが NullReferenceExceptionをスローする場合は、を呼び出すようにします。Although the composite formatting feature can gracefully handle a null string, as the following example shows, attempting to call one if its members throws a NullReferenceException.

using namespace System;

void main()
{
   String^ s;
  
   Console::WriteLine("The value of the string is '{0}'", s);

   try {
      Console::WriteLine("String length is {0}", s->Length);
   }
   catch (NullReferenceException^ e) {
      Console::WriteLine(e->Message);
   }   
}
// The example displays the following output:
//     The value of the string is ''
//     Object reference not set to an instance of an object.
  String s = null;

  Console.WriteLine("The value of the string is '{0}'", s);

  try 
  {
      Console.WriteLine("String length is {0}", s.Length);
  }
  catch (NullReferenceException e) 
  {
      Console.WriteLine(e.Message);
  }

  // The example displays the following output:
  //     The value of the string is ''
  //     Object reference not set to an instance of an object.
Module Example
   Public Sub Main()
      Dim s As String

      Console.WriteLine("The value of the string is '{0}'", s)

      Try 
         Console.WriteLine("String length is {0}", s.Length)
      Catch e As NullReferenceException
         Console.WriteLine(e.Message)
      End Try   
   End Sub
End Module
' The example displays the following output:
'     The value of the string is ''
'     Object reference not set to an instance of an object.

空の文字列とは何ですか。What is an empty string?

空の文字列 ("") または String.Emptyが明示的に割り当てられている場合、文字列は空になります。A string is empty if it is explicitly assigned an empty string ("") or String.Empty. 空の文字列の Length は0です。An empty string has a Length of 0. 次の例では、空の文字列を作成し、その値とその長さを表示します。The following example creates an empty string and displays its value and its length.

String^ s = "";
Console::WriteLine("The length of '{0}' is {1}.", s, s->Length);
// The example displays the following output:
//       The length of '' is 0.      
String s = "";
Console.WriteLine("The length of '{0}' is {1}.", s, s.Length);

// The example displays the following output:
//       The length of '' is 0.      
Dim s As String = ""
Console.WriteLine("The length of '{0}' is {1}.", s, s.Length)
' The example displays the following output:
'        The length of '' is 0.      

適用対象

こちらもご覧ください