【QlikSense】区切り文字で区切られた文字列から対象の文字を抽出する|SubField

【QlikSense】区切り文字で区切られた文字列から対象の文字を抽出する|SubField

更新日:2025/02/18

この記事をシェア

  • X
  • Facebook
  • LINE
  • COPY LINK
クリップボードにコピーしました

はじめに

BigQueryを日常的に使用しており、その独自関数に精通している人がQlikSenseを初めて使用する場合、利用可能な関数が異なるため戸惑うことがしばしばあります。

今回は、BigQueryで使用する「SPLIT」関数をQlikSenseでどのように実装するかを説明します。

QlikSenseについて、基礎的な理解を深めたい方は過去のブログも参考にしてください。

また、「forやwhileを使って式や日付を繰り返す方法」についても過去のブログで解説しています。

区切り文字で区切られた文字列とは?

区切り文字をWikiで調べると下記のように出てきます。

区切り文字(英語: delimiter、デリミタ)は、コンピュータ言語やデータ通信において独立した領域の境界を特定するために入れられる文字である。例えば、コンマ区切りの文字列において、コンマ (,) は各フィールドの境界を表す「フィールド区切り文字」の役割をしている。

出典:フリー百科事典『ウィキペディア(Wikipedia)』

もう少し具体的に見てみましょう。

<https://www.uncovertruth.co.jp/dx-accelerator/blog/>

上記のウェブサイトのURLを見ると “/” や “.” でウェブサイトの階層が区切られているのが分かります。この時、 “/” や “.” のような文字のことを区切り文字と呼びます
ほかにも、”・” や “_” や ” “(スペース) も区切り文字として使われます。このように区切り文字で区切られたデータを使用する機会は、データ分析を行っていると頻繁に出てきます。

SubField関数で文字列を抽出する方法

SubField関数

今回紹介する関数はSubField関数です。
この関数はBigQueryでいうSPLIT関数と同じ役割を果たします。

まずは関数の構文を見てみましょう。

SubField(text, delimiter[, field_no ])

簡単に解説をしておきます。

  • text:抽出元の文字列。
  • delimiter:区切り文字。
  • field_no:オプション。何番目の区切り区間を抽出するか示した番号。

参考:SubField

SubField関数の使い方

ここからは、具体的にどのような挙動をするのかを見ていきます。

例1 : [ 田中/中村/久保 ]から苗字を抽出したい。

関数

SubField('田中/中村/久保', '/')

結果

氏名
田中
中村
久保

例2 : [ 田中/中村/久保 ]から1番目の苗字を抽出したい。

関数

SubField('田中/中村/久保', '/', 1)

結果

氏名
田中

発展編 : [ {田中},{太郎} ]から苗字と名前を抽出したい。

(ヒント : 区切り文字は1文字とは限らない)

関数

SubField(SubField( '{田中}, {太郎}', '}, {', 1), '{', 2) as 苗字
,SubField(SubField('{田中},{太郎}', '},{',2),'}',1) as 名前

解説

複数の記号に挟まれているので、苗字と名前をそれぞれ二回に分けてSubField関数を用いて抽出していきます。

  1. SubField('{田中},{太郎}', '},{',1) ‘},{‘ で区切られた1番目の文字列を抽出する
    → ‘{田中’
  2. SubField('{田中','{',2) ‘{‘ で区切られた2番目の文字列を抽出する
    → ‘田中’
    ※このとき1番目は空欄となります。

解説は省きますが名前も同様ですね。

このようにSubFieldを2つ組み合わせることでとある文字で挟まれた文字列を抽出することができます

forやwhileなどの繰り返し関数も組み合わせた応用編についてはこちらをご覧ください。

おわりに

SubField関数の中にSubField関数が出てくると頭がこんがらがると思いますが、ゆっくり読み解いていきましょう。

使い方が分かった人は、応用編もぜひ見てみてください!

データ活用でお困りの方へ

私たちDX-Accelerator事業では、データ活用についての様々なスキルを持った人材が常駐でデータ活用支援を行うサービスを提供しています。
当事業はローンチから約3年(24年9月時点)ですが、これまでに様々な業界・業種のお客さまのお手伝いをさせていただいております。

少しでも興味を持ってくださったり、すでにご相談をしたいことがある方はお気軽にご相談ください。現在あなたの組織のフェーズがどこにあるかは関係ありません。まずはお話をしましょう。

もう少しサービスについて知りたい方はサービス紹介資料もご用意しています。

お役立ち資料をご活用ください!

データプロフェッショナルであるDXAメンバーが、業務経験をもとにお役立ち資料を作成しています!
おすすめ3選はこちら!

1.GA4 サンプルレポート|Looker Studio 無料プレゼント
GA4の基本KPIが網羅されたテンプレートです!データを差し替えればすぐにご活用いただけます。

2.サンプル経営ダッシュボード | Tableau無料プレゼント
実際にご提供しているダッシュボードをテンプレート化したものです!是非構成やグラフ選択の参考にしてください。

3.データ活用の部長さん必見!データ活用 内製化の正しい進め方
これまでご支援してきた実績をもとに、データ活用の内製化の進め方を解説しています!組織のDXを担われている方、必読です!

以上、おすすめ3選でした!
すべて無料でダウンロードできますので、お気軽にご利用ください。

この記事をシェア

  • X
  • Facebook
  • LINE
  • COPY LINK
クリップボードにコピーしました

関連記事

DX-Acceleratorについて
より詳しく知りたい方!

DX-Accelerator データ人材常駐支援サービス

即戦力の
アナリティクスエンジニアが
常駐支援!
まずはお気軽にご相談ください。

DX-Acceleratorについて
より詳しく知りたい方!