PowerShellで、変数に格納された文字列から文字数を指定して取得する方法を解説します。
また、Excelなどの「Left, Right, Mid」関数のように取得する方法もご紹介します。
はじめに
PowerShellでは、文字数を指定して文字列を取得するのに便利な「Substring」メソッドがあります。
今回は、この Substringメソッドの使用方法を説明していきたいと思います。
書式
Substringメソッドの書式です。
n文字目より後ろの文字列を取得する
n文字目より後ろの文字列を全て取得する場合の書式です。
$変数.Substring(n);
n文字目より後ろのm文字取得する
n文字目より後ろのm文字分の文字列を取得する場合の書式です。
$変数.Substring(n, m);
末尾からn文字取得する
文字列の末尾から、n文字の文字列を取得する場合の書式です。
$変数.Substring($変数.Length -n, n);
リンク
サンプルと実行結果
サンプルと実行結果です。
5文字目より後ろの文字列を取得
3文字目より後ろの4文字を取得
文字列の末尾から5文字取得
$num = '123456789' Write-Host $num.Substring($num.Length -5, 5) pause
56789 続行するには、Enter キーを押してください...:
リンク
Left関数のように取得
ExcelやVBScriptの「Left」関数のように取得するサンプルです。
取得開始位置を[0]とすることで、文字列の先頭から指定した文字数で文字列を取得しています。
$num = '123456789' Write-Host $num.Substring(0, 5) pause
12345 続行するには、Enter キーを押してください...:
Right関数のように取得
ExcelやVBScriptの「Right」関数のように取得するサンプルです。
例では、取得開始位置を末尾から[3]文字目とし、そこから[3]文字取得することで、文字列の末尾から指定した文字数で文字列を取得しています。
$num = '123456789' Write-Host $num.Substring($num.Length -3, 3) pause
789 続行するには、Enter キーを押してください...:
Mid関数のように取得
ExcelやVBScriptの「Mid」関数のように取得するサンプルです。
例では、取得開始位置が[3]文字目で、そこから[5]文字取得することで、指定した文字数で中間の文字列を取得しています。
$num = '123456789' Write-Host $num.Substring(3, 5) pause
45678 続行するには、Enter キーを押してください...:
コメント