PowerQuery(パワークエリ)で文字列データを整える方法を紹介します。
文字列内の空白やスペースの削除、大文字小文字の変換、改行コードや数値の削除などについて解説します。
空白の削除
テキストデータ内にある空白の処理方法を紹介します。
前後の空白の削除(ボタン操作)
まず、リボンにあるコマンドボタンを利用した方法を紹介します。
文字列前後の空白を削除するには書式にある「トリミング」を使用します。
- 対象のテキスト列をクリックして選択する。
- 変換タブまたは列の追加タブにある「書式」の「トリミング」をクリックする。

結果は下図のように前後の空白が削除できます。文字列の間にある空白はそのまま残ります。

前後の空白の削除(M言語)
次にM言語を用いた前後の空白の削除方法を紹介します。前後の空白の削除にはText.Trim関数を用います。
下図のようにText.Trim関数に対象の文字列データを設定することで、データの前後の空白を削除できます。

先頭の空白のみ、末尾の空白のみを削除したい場合は下記の関数に使用してください。
- 先頭の空白のみを削除:Text.TrimStart ( 文字列データ )
- 末尾の空白のみを削除:Text.TrimEnd ( 文字列データ )
使用手順
使用手順の説明例として下図の氏名のデータから文字列前後の空白を削除したカスタム列を作成します。

対象列データの空白を削除したカスタム列を作成します。
- 列の追加タブの「カスタム列」を選択する。
- 列名とText.Trim関数を用いて空白を削除する式
Text.Trim([氏名])
を記述する。※対象列名は状況に応じて変更して使用してください。

これで文字列前後のスペース(空白)の削除は完了です。

新しい列を追加せずに対象列データの空白を削除したい場合は下記の手順で行います。
- 適用したステップの一番下のステップを右クリックして「後にステップの挿入」を選択する。
- 追加したステップで下記の空白を削除する式を入力する。※式内のテーブル名や列名は状況に応じて変更して使用してください。
Table.TransformColumns(テーブル名,{{"列名", Text.Trim, type text}})

Sponsored link
すべての空白の削除
次に文字列データに含まれるすべての空白を削除する方法を紹介します。
空白の削除には「値の置換」を用いて、以下の手順で行います。
- 対象のテキスト列をクリックして選択する。
- 変換タブにある「値の置換」を選択する。
- 検索する値に空白(半角スペースまたは全角スペース)を入力して、置換後には何も入力しないで置換する。

結果は下図のようにテキストデータに含まれるすべての空白が削除されます。

連続する複数の空白を1つにする
次に文字列データに含まれる連続する空白を1つに変換する方法を紹介します。
連続する空白を1つに変換するには下記の式を用います。列名は任意に変更してください。
・空白が半角スペースの場合
Text.Combine(List.RemoveMatchingItems(Text.SplitAny([列名], " "),{""})," ")
・空白が全角スペースの場合
Text.Combine(List.RemoveMatchingItems(Text.SplitAny([列名], " "),{""})," ")
使用手順は以下の通りです。
- カスタム列を選択する。
- カスタム列の式に変換式を入力する。下図では列名を”氏名”に設定しています。

結果は下図のように氏名の間の連続した空白が一つになっています。

Sponsored link
大文字小文字の変換
次に文字列の大文字・小文字の変換について紹介します。
大文字に変更する
テキストデータをすべて大文字に変換するには変換タブにある「書式」の「大文字」を利用します。
- 対象のテキスト列をクリックして選択する。
- 変換タブにある「書式」の「大文字」をクリックする。

結果は下図のように全てが大文字に変更できます。

小文字に変更する
テキストデータをすべて小文字に変換するには変換タブにある「書式」の「小文字」を利用します。
- 対象のテキスト列をクリックして選択する。
- 変換タブにある「書式」の「小文字」をクリックする。

結果は下図のように全てが小文字に変更できます。

先頭文字だけを大文字にする
テキストデータの先頭文字を大文字に変換するには変換タブにある「書式」の「各単語の先頭文字を大文字にする」を利用します。
- 対象のテキスト列をクリックして選択する。
- 変換タブにある「書式」の「各単語の先頭文字を大文字にする」をクリックする。

結果は下図のように先頭文字のみが大文字、それ以外が小文字に変更できます。

Sponsored link
数値の削除
次に文字列データに含まれる数字(0,1,2,3,4,5,6,7,8,9)をすべて削除する方法を紹介します。
数字を削除するには下記の式を用います。列名は任意に変更してください。
Text.Remove([列名], {"0","1","2","3","4","5","6","7","8","9"})
使用手順は以下の通りです。
- カスタム列を選択する。
- カスタム列の式に変換式を入力する。下図では列名を”商品ID”に設定しています。

結果は下図のようにテキストのみになっています。

Sponsored link
改行の削除(制御文字の削除)
次に文字列データ内の改行を削除する方法を紹介します。
改行を削除するには書式にある「クリーン」を使用します。クリーンを使うことで改行コードを含む制御文字が削除されます。
- 対象のテキスト列をクリックして選択する。
- 変換タブまたは列の追加タブにある「書式」の「クリーン」をクリックする。

結果は下図のように改行が削除されます。

改行コードの処理方法についてはこちらで詳しく紹介していますので参考にしてみてください。

Sponsored link
先頭語・末尾語の追加
最後に、文字列データの先頭や末尾に文字列を追加する方法を紹介します。
先頭文字や末尾文字の追加には書式にある「プレフィックスの追加」「サフィックスの追加」を使用します。
- 対象のテキスト列をクリックして選択する。
- 「書式」の「プレフィックスの追加」または「サフィックスの追加」をクリックする。
- 追加したい文字列を入力してOKとする。ここでは先頭語(プレフィックス)を追加します。


結果は下図のように先頭に文字が追加されています。

文字列データの分割や一部の切り出しについてはこちらの記事で紹介していますので参考にしてみてください。


Sponsored link
パワークエリの学習本についてはコチラの記事でまとめてますので参考にしてみてください。
・初心者向けおすすめ学習本
・初中級者向けおすすめ学習本
コメント