【データ整形】全角数字を半角数字に変換・半角カナを全角に変換

文字種の変換

こんにちは。Deckです。

今回はデータ整形の一環として、「半角カナ→全角カナ」「全角数字→半角数字」の変換を行ってみましょう。

Qlik Senseにはアルファベットの大文字⇔小文字変換(Upper,Lower,Capitalize)はありますが、日本語の文字種を変換する関数が用意されていないためMappingを利用して文字列を置換する必要があります。

(Mappingとは?という方はこちらの記事もあわせてご覧ください)

以下のデータをサンプルとして用意いたしましたのでこちらからダウンロードしてご利用ください。

ダウンロードしたデータを解凍するとフォルダ『文字種変換テーブル』『変換対象データサンプル』が出力されます。

前準備

新規アプリを作成し、データ ロード エディタを開きます。

データ接続を作成します。「データ接続を作成」→「フォルダ」をクリックします。

データが含まれているフォルダを選択し、「作成」をクリックします。

全角数字→半角数字

文字列を変換する規則となるMappingテーブルをロードします。

「選択」をクリックし、変換テーブルを選択します。

データのプレビュー画面ではそのまま「スクリプトを挿入」をクリックします。

自動生成されたスクリプトを編集し、テーブル名「Mapping_全角数字から半角数字」を付けてMapping LOADを行います。

次に変換対象のデータを選択します。

「選択」をクリックし、変換対象のファイルを選択します。

プレビュー画面ではそのまま「スクリプトを挿入」をクリックします。

スクリプトの項目「郵便番号」の部分を「MapSubstring(‘Mapping_全角数字から半角数字’,郵便番号) as 郵便番号」に編集します。

以上で準備は完了です。データをロードすると全角数字が半角数字に置き換わって読み込まれました。

半角カナ→全角カナ

概要は数字の文字種と同様にMappingテーブルを生成し、Mappingテーブルを使って変換対象のデータの文字列を置換します。

変換テーブルを選択し、テーブル名「Mapping_半角カナから全角カナ」を付けてMapping LOADを行います。

変換テーブルを選択し、項目「データ」を「MapSubstring(‘Mapping_半角カナから全角カナ’,データ) as データ」に編集します。

データをロードすると半角カナから全角カナへの変換がうまく行われています。

まとめ

今回は「半角カナ→全角カナ」「全角数字→半角数字」の変換方法を解説しましたが、同様の方法でほかの文字種の変換をすることもできます。

必要に応じて変換表を作成して置換をしてみてください。

注意点として、「2文字以上→1文字の変換(ガ→ガなど)」が含まれる際は変換表の先頭に配置してください。

「カ→カ」の変換が先に行われてしまうと「゙」が取り残されてしまいます。

それでは、またお会いしましょう!

QlikSenseを体験してみませんか?

アイウェイズコンサルティングでは毎月QlikSenseの無料ハンズオンセミナーを開催しています。 初めてQlikSenseをご利用される方を対象に、QlikSenseって何?ってところからQlikSenseと他のBIとの違いについてもわかりやすくご説明させて頂いております。