Loading [MathJax]/extensions/tex2jax.js

Rainbow Engine

IT技術を分かりやすく簡潔にまとめることによる学習の効率化、また日常の気付きを記録に残すことを目指します。

Powershell

Powershellで文字列がnullかどうか判定する方法

投稿日:2020年11月26日 更新日:

<目次>

(1) Powershellで文字列がnullかどうか判定する方法
 (1-1) 構文
 (1-2) 構文使用例
 (1-3) サンプルプログラム

(1) Powershellで文字列がnullかどうか判定する方法

(1-1) 構文

今回ご紹介する「IsNullOrEmpty」を使う方法は「チェック対象文字列」に指定した文字列が「null」or「空白」なら「true」が返却され、それ以外(nullか空白以外)では「false」になります。

  1. [string]::IsNullOrEmpty([チェック対象文字列])

(表1)

条件 返却値
[チェック対象文字列]が「null」か「空白」 TRUE
[チェック対象文字列]が上記以外 FALSE

また[チェック対象文字列]については直接入力もできますし、変数で与える事も可能です。

目次にもどる

(1-2) 構文使用例

実際に「nullか空白の場合」と「それ以外の場合」とで、イメージが湧きやすくなるよう使用例をご紹介します。

①「Nullか空白【である】事をチェックする場合」

上記構文を使い「Nullか空白なら」の条件はif文を用いて次のように記述します。
  1. # 実行コマンド
  2. if ([string]::IsNullOrEmpty($null)){
  3. echo "Test_1 String is null !"
  4. }
  5. # 実行結果
  6. # ⇒echoされる

 

②「Nullか空白【でない】事をチェックする場合」

逆のパターンは否定の「-not」を用いて次のように記述します。

  1. # 実行コマンド
  2. if (-not ([string]::IsNullOrEmpty($null))){
  3. echo "Test_1 String is null !"
  4. }
  5. # 実行結果
  6. # ⇒echoされない

目次にもどる

(1-3) サンプルプログラム

次はサンプルプログラムで、様々なパターンの挙動を確認します。

(サンプルプログラム1)

  1. # [Test_1] 「null」はtrue判定(=null扱い)になる
  2. if ([string]::IsNullOrEmpty($null)){
  3. echo "Test_1 String is null !"
  4. }
  5. # [Test_2] 「空文字列」もtrue判定(=null扱い)になる
  6. if ([string]::IsNullOrEmpty("")){
  7. echo "Test_2 String is null !"
  8. }
  9. # [Test_3] 「半角スペース」はfalse判定になる
  10. if ([string]::IsNullOrEmpty(" ")){
  11. echo "Test_3 String is null !"
  12. }

(表)

テスト番号 テスト内容 結果
Test1 null
(直接指定)
true
Test2 空文字列
(直接指定)
true
Test3 半角スペース
(直接指定)
false

(図131)

(サンプルプログラム2)

  1. # [Test_4] 変数でも指定可能
  2. $temp1 = "aaaa"
  3. if ([string]::IsNullOrEmpty($temp1)){
  4. echo "Test_4 String temp1 is null !"
  5. }
  6. # [Test_5] 変数でも指定可能
  7. $temp2 = $null
  8.  
  9. if ([string]::IsNullOrEmpty($temp2)){
  10. echo "Test_5 String temp2 is null !"
  11. }

(表)

テスト番号 テスト内容 結果
Test4 文字列「aaaa」
(変数指定)
false
Test5 null
(変数指定)
true

(図132)

(サンプルプログラム2)

  1. # [Test_6] 肯定ケース
  2. if ([string]::IsNullOrEmpty("aaa")){
  3. echo "Test_6 String is null !"
  4. }
  5.  
  6. # [Test_7] 否定(-not)ケース
  7. # "aaa"なのでnullでない、つまりfalseになりますが、その否定(-not)なのでtrueになる
  8. if (-not ([string]::IsNullOrEmpty("aaa"))){
  9. echo "Test_7 String is not null !"
  10. }

(表)

テスト番号 テスト内容 結果
Test6 文字列「aaa」
(直接指定)
false
Test7 文字列「aaa」
(直接指定、-not否定)
true

(図133)

目次にもどる

Adsense審査用広告コード


Adsense審査用広告コード


-Powershell

執筆者:


  1. […] Powershell で文字列が null かどうか判定する方法 | Rainbow Engine […]

  2. […] Powershell で文字列が null かどうか判定する方法 | Rainbow Engine […]

comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

関連記事

no image

ファイルのバックアップを自動化する手順をご紹介(Windows Powershell使用)

  <目次> (1) ファイルのバックアップを自動化する手順をご紹介(Windows Powershell使用)  (1-1) バックアップ自動化の方式(概要)  (1-2) バックアップ自 …

Powershellで親フォルダのパスを取得する方法+Split-Pathコマンドレットのオプションも併せてご紹介

<目次> (1) Powershellで親フォルダのパスを取得する方法  (1-1) 構文と使用例  (1-2) ご参考:Split-Pathのオプション (2) Powershellでフォルダ配下の …

Powershellで実行中のファイル名を取得する方法

<目次> (1) Powershellで実行中のファイル名を取得する方法  (1-1) 構文①  (1-2) 構文①サンプルプログラム  (1-3) 構文②  (1-4) 構文②サンプルプログラム ( …

「このシステムではスクリプトの実行が無効になっているため、ファイルXXXを読み込みことができません」エラー(PowerShell)が出る原因と対処方法

<目次> (1) 「このシステムではスクリプトの実行が無効になっているため、ファイルXXXを読み込みことができません」エラー(PowerShell)が出る原因と対処方法  (1-1) エラーメッセージ …

バッチから引数を与えてPowershellを実行する方法

<目次> (1) バッチからPowershellを実行する方法  (1-1) 構文①  (1-2) 構文② (2) バッチから引数を与えてPowershellを実行する方法  (2-1) 引数を表現す …

  • English (United States)
  • 日本語
S