鷹尾祥(アキラ)のExcel BI ブログ

Excelの革新的機能であるパワーピボット/パワークエリ/DAXについて紹介します。

PowerQuery テキスト型データ (Text関数)

テキスト型データのText関数のサンプル式と結果の一覧を用意しました。適宜ご利用ください。

型変換

働き サンプル式 結果
文字コード⇒文字 Character.FromNumber(65) A
文字⇒文字コード Character.ToNumber("A") 65
日付型⇒テキスト型 Text.From(#date(2019,11,24)) 2019/11/24 0:00:00
テキスト型⇒リスト型 Text.ToList("あいうえお") {"あ", "い", "う", "え", "お"}

部分抽出

※ PowerQueryでは座標は0開始です。つまり、0が1文字目、1が2文字目になります。

働き サンプル式 結果
X文字目から
1文字
Text.At
("あうえお", 1)
X文字目から
Y文字
Text.Middle
("あいうえお", 1, 3)
いうえ
X文字目から
Y文字
Text.Range
("あいうえお", 1, 3)
いうえ
先頭(左)から
X文字
Text.Start
("あいうえお", 3)
あいう
末尾(右)から
X文字
Text.End
("あいうえお", 3)
うえお
最初の区切り
記号のあと
Text.AfterDelimiter
("あ-いう-えお", "-")
いう-えお
2番目の区切り
記号のあと
Text.AfterDelimiter
("あ-いう-えお", "-", 1)
えお
最初の区切り
記号のまえ
Text.BeforeDelimiter
("あ-いう-えお", "-")
2種の区切り
記号の間
Text.BetweenDelimiters
("あいうえ", "", "")
いう
2種の区切り
記号の間(2番目)
Text.BetweenDelimiters
("あ【いう】え", "", "", 1, 0)

置き換え

働き サンプル式 結果
X文字目にY文字列を挿入 Text.Insert
("あいお", 2, "うえ")
あいうえお
リストで指定した1文字を削除。
パラメータのリストは1文字のみ。
(複数文字はエラー)
Text.Remove
("あ い うお",
{" ", " ", "、", "。"})
あいうえお
X文字目からY文字を削除 Text.RemoveRange
("あいアイウエオうえお", 2, 5)
あいうえお
Xの文字列をY文字列に置き換え Text.Replace
("あ123123123123お", "123", "_")
あ_い_う_え_お
X文字目からY文字を置き換え Text.ReplaceRange
("あ12お", 1, 2, "いうえ")
あいうえお
リストで指定した文字
のみを拾い出す
Text.Select
("あ い う", {"あ".."お"})
あいうえお

情報・検索・判定

働き サンプル式 結果
文字数 Text.Length
("あいうえお")
5
指定した文字列で始まる? Text.StartsWith
("あいうえお", "あい")
true
指定した文字列で終わる? Text.EndsWith
("あいうえお", "えお")
true
指定した文字列がある? Text.Contains
("あいうえお", "いう")
true
指定した文字の位置 Text.PositionOf
("あいうえお", "いう")
1
指定した文字の位置
(無い場合)
Text.PositionOf
("あいうえお", "かき")
-1
最初の指定の文字の場所 Text.PositionOf
("あいうえおあいうえお", "いう", Occurrence.First)
1
最後の指定の文字の場所 Text.PositionOf
("あいうえおあいうえお", "いう", Occurrence.Last)
6
複数ある場合は
リストで出てくる
Text.PositionOf
("あいうえおあいうえお", "いう", Occurrence.All)
List {1, 6}
リストの文字列の
最初の位置
Text.PositionOfAny
("あうえおかくけこさすせそ", {"い","き","し"})
1

加工

働き サンプル式 結果
テキストを結合 Text.Combine
({"あいう", "えお"})
あいうえお
テキストを結合(2つ以上) Text.Combine
({"あ","い","う","え","お"})
あいうえお
区切り記号を挟んでテキストを結合 Text.Combine
({"あいう", "えお"}, ",")
あいう,えお
アルファベットを小文字 Text.Lower
("Excel")
excel
アルファベットを大文字 Text.Upper
("Excel")
EXCEL
英単語の頭を大文字、ほかは小文字 Text.Proper
("i LOVE eXcel")
I Love Excel
テキストが10文字になるように
先頭に半角スペース
Text.PadStart
("あいう", 10)
          あいう
テキストが10文字になるように
先頭に記号
Text.PadStart
("あいう", 10, "^")
^^^^^^^あいう
テキストが10文字になるように
後ろに半角スペース
Text.PadEnd
("あいう", 10)
あいう          
テキストが10文字になるように
後ろに記号
Text.PadEnd
("あいう", 10, "^")
あいう^^^^^^^
区切り記号でリストに分割 Text.Split
("あ-いう-えお", "-")
{"あ","いう","えお"}
区切り記号でリストに分割 Text.SplitAny
("あ-いう--お", "-")
{"あ","いう","えお"}
印刷できない文字を削除 Text.Clean
("あいう#(lf)えお")
あいうえお
先頭と最後のスペースを削除 Text.Trim
(" あ い う え お ")
あ い う え お
先頭のスペースを削除 Text.TrimStart
(" あ い う え お ")
あ い う え お 
最後のスペースを削除 Text.TrimEnd
(" あ い う え お ")
 あ い う え お
指定の数だけ繰り返す Text.Repeat
("あ", 5)
あああああ
逆にならべる Text.Reverse
("あいうえお")
おえういあ

定数

働き サンプル式 結果
最初 Occurrence.First 0
最後 Occurrence.Last 1
すべて Occurrence.All 2
最初 RelativePosition.FromStart 0
最後 RelativePosition.FromEnd 1
Shift-JIS 932 (定数なし) 932
Unicode TextEncoding.Unicode 1200
Utf16 TextEncoding.Utf16 1200
BigEndianUnicode TextEncoding.BigEndianUnicode 1201
Windows TextEncoding.Windows 1252
Ascii TextEncoding.Ascii 20127
Utf8 TextEncoding.Utf8 65001

関連記事

MS社のリファレンスです。
docs.microsoft.com