タグ別アーカイブ: 文字列操作

【M言語に慣れる】_15回目_TEXT関数/文字列関数

【M言語は難しくない】今回は、TEXT関数の中から、2つの事例を紹介したいと思います。通常のエクセル関数と同じ様に、M言語でも文字列を操作する関数は多数あります。興味のある方はぜひ、こちらのMicrosoft社のページも参照してみてください

目次

文字列の有無を判定する関数

文字列を置き換える関数

<まとめ>

文字列の有無を判定する関数

 Text.Contains関数は、ある文字列の中に指定した文字列があるかとうかを判定し、「TRUE」か「FALSE」で返す関数です

以下の一文は、Microsoft社のページからの抜粋になります

Text.Contains(“Hello World”, “Hello”)

上の ように記述した場合には、「TRUE」を返します

次もMicrosoft社のページからの抜粋になりますが、この場合は「FALSE」を返します

Text.Contains(“Hello World”, “hello”)

ちなみに、

 M言語では、大文字と小文字の違いは考慮されますので、この点は注意が必要です

では、実際にPower Queryエディタ(以降、エディタ)で実際にこの関数を操作してみます

使用するデータは、「抽出」という1列だけがあるこちらのデータになります

 上の画像のデータから、Text.Contains関数で文字列「0」を含む行を判定し、「TRUE」もしくは「FALSE」を返してみます

まず、「列の追加」タブからカスタム列・作成画面を開きます

こちらの画面でカスタム列の式に「Text.Contains」と入力します

上のGIF画像のように「Text.Con・・・」と入力する途中で、該当の関数が出てきますので、Tabキーで確定します

次にText.Contains関数の丸括弧の中を、以下の画像のように確定します

すると、エディタ内に「0」が含まれる行を判定した列が追加されます

続きを読む 【M言語に慣れる】_15回目_TEXT関数/文字列関数

文字列の抽出~上級編17回

 エクセル関数で特定の文字列を抽出する場合には、RIGHT関数やLEFT関数、そしてMID関数が良く使われます。今回の解説では、Power Queryでこれらの関数と同じ様に特定の文字列を抽出する方法を解説します。

 また、特定の文字列の位置が不特定の場合、エクセル関数ではFIND関数やSEARCH関数が前述の関数と組み合わせて使用されます

Power Queryでは、特定の文字列の位置が不特定の場合でも一括で抽出できる裏技がありますので、そちらについても解説を行います

例えば、

 下のGIF画像のように、「-」が不規則に出現する文字列の中から「左から2つ目3つ目ハイフン」の文字列を抽出することもできます

では、Power Queryにて特定文字列を抽出する方法について詳細な解説をはじめます

 以降の解説は、全てPower Queryエディタ(以降、エディタ)を開いた状態から解説を行います

エディタ内で使用するタブは「変換タブ」、使用メニューは「抽出」になります

目次

1.左から指定した長さの文字数を抽出

2.右から指定した長さの文字数を抽出

3.位置を指定して文字列の途中から指定した長さを抽出

4.特定の文字列の前後の文字を抽出

5.「特定の文字列の間」の文字を抽出

<まとめ>

1.左から指定した長さの文字数を抽出

エクセル関数では、LEFT関数で行う内容です

こちらは、下の画像の「最初の文字」から抽出を行います

上の画像の「最初の文字」をクリックすると下の画像の画面が開くので、こちらで抽出する長さを指定します

OKボタンを押せば、下のGIFのように左から3文字が抽出されます

2.右から指定した長さの文字数を抽出

こちらはエクセル関数で言えば、RIGHT関数になります

下の画像にある「最後の文字」から指定します

1.の「左から指定した長さの文字数を抽出」と同じ様に、「最後の文字」をクリックした後に開くダイアログボックスにて抽出する長さを指定します

後の処理は、1.と同じです

続きを読む 文字列の抽出~上級編17回

文字列の追加、置換~上級編18回

 

 今回は、既存の文字列に「新たな文字列を追加」する方法と、「文字列を置き換える」方法を解説します

「文字列を置き換える」場合、繰り返し同じ文字が出現する時には、特定の位置の文字だけ置き換える必要が出てくる時があります

その場合には、過去に解説した「文字列の抽出」「列のマージ」を組み合わせて置き換えます

では、本格的な解説をはじめます!

尚、解説はPower Queryエディタ(以降、エディタ)画面内の操作のみになります

目次

1.文字列の追加

2.文字列の置換

3.繰り返し文字の置換

<まとめ>

1.文字列の追加

①既存文字列のに追加

下の画像の文字列の前に文字列「A-」を追加する方法を解説します

なお、文字列を追加する場合、元の文字列を残したまま、新たに「文字列を追加」した列を追加する方法と、元の文字列に対して、「文字列を追加」する方法があります

今回は、元の文字列を残したまま、新たに列を追加する方法で解説します

ですので、下の画像のように「列の追加」タブを使用します

「列の追加」タブ内にある「書式」の右横の▼マークから「プレフィックスの追加」をクリックします

すると下の画像のような画面が開きますので、追加する文字列「A-」を指定します

追加する文字列を指定したら、画面右下のOKボタンを押せば、下のGIF画像のように文字列「A-」が既存の文字列のに追加されています

②既存文字列のに追加

下の画像の文字列の後に文字列「-B」を追加する方法を解説します

基本的には、①の既存の文字列の前に文字列を追加する方法と一緒です

但し、下の画像の箇所にて、クリックする箇所が違います

「プレフィックスの追加」でなく「サフィックスの追加」をクリックします

それ以外の処理は①と一緒です

続きを読む 文字列の追加、置換~上級編18回