キーワード抽出
機能
《キーワード抽出》は、開いているテーブルの「検索対象フィールド」の値の中からキーワードを探し、フィールドごとに見つかったキーワードの数とキーワードを追加した、新しいテーブルを作成する機能です。キーワードは複数指定でき、値の一部に含まれていれば一致します(部分一致)。元のテーブルは変更されません。
| 売上日 | 商品No | 摘要 |
|---|---|---|
| 2024/04/10 | A01 | 東京本社 売上 |
| 2024/04/12 | B02 | 大阪支店 |
| 2024/05/20 | A01 | 東京と大阪と東京 |
| 2024/05/25 | C03 | tokyo office |
→
| 摘要 | キーワード数_摘要 | キーワード_摘要 | 商品No | 検索文字列 |
|---|---|---|---|---|
| 東京本社 売上 | 1 | 東京 | A01 | 東京,大阪 |
| 大阪支店 | 1 | 大阪 | B02 | 東京,大阪 |
| 東京と大阪と東京 | 2 | 東京,大阪 | A01 | 東京,大阪 |
| tokyo office | 0 | C03 | 東京,大阪 |
- 例は、「検索対象フィールド」が「摘要」、「その他出力フィールド」が「商品No」の場合です。
- キーワードが見つからないレコードも出力されます(キーワードの数は「0」、キーワードは空欄)。レコードは元のテーブルの順のままです。
- 「キーワード数_フィールド名」は、見つかったキーワードの種類の数です。同じキーワードが何回あっても1と数えます。
- 「キーワード_フィールド名」には、見つかったキーワードが「,」区切りで出力されます。
- 「検索文字列」には、入力したキーワードがそのまま出力されます(「文字列」の場合)。
メニュー
《加工》-《キーワード抽出》
- テーブルを開いている場合に使用できます。開いているテーブルがキーワードを探すテーブルになります。
- テーブルの画面で条件式を設定している場合は、その条件式が「条件式」に入力された状態で開きます。
- 操作ログからキーワード抽出のコマンドを修正することもできます(「■ 操作ログからコマンドを修正する場合」参照)。
操作ログからコマンドを修正する場合
操作ログでキーワード抽出のコマンドを修正すると、コマンドの内容が設定された状態で画面が開きます。
- 「検索対象フィールド」「その他出力フィールド」は、コマンドに記述された順に選択されます。テーブルにないフィールドは選択されません。
- 「検索する文字列」は、キーワードの場合は「文字列」に、フィールドの場合は「フィールド」に設定されます。フィールドがテーブルにない場合は空欄になるので、選択し直してください。
- 「大小文字区別」、条件式、保存先は、コマンドのとおりに設定されます。保存先には、「04_table」フォルダからの「フォルダ名¥テーブル名.hdf5」が表示されます。
設定内容

- 1元のテーブル:キーワードを探すテーブルの、フォルダ名とテーブル名が表示されます。
- 2《フィールド選択》ボタン:「フィールド選択」画面で、「検索対象フィールド」をまとめて選択・解除できます。
- 3検索対象フィールド(必須):キーワードを探すフィールドの行をクリックして選択します(もう一度クリックで解除)。数値型・日付型のフィールドも選択できます。
- 左端の番号は選択した順番です。この順に、作成するテーブルのフィールドが並びます。
- 選択したフィールドごとに、「キーワード数_フィールド名」「キーワード_フィールド名」が追加されます。
- 見出しのチェックボックス(またはCtrl+A)で、すべてのフィールドを選択・解除します。すべてのフィールドを選択した場合は、選択した順に関係なく、テーブルのフィールドの順になります。
- 4《フィールド選択》ボタン:「フィールド選択」画面で、「その他出力フィールド」をまとめて選択・解除できます。
- 5その他出力フィールド(任意):キーワードを探さずに、そのまま出力するフィールドを選択します。選択方法は3と同じです。
- 選択した順に、「検索対象フィールド」の後ろに並びます。
- 「検索対象フィールド」と同じフィールドを選択しても、1回だけ出力されます。
- 6検索する文字列(必須):キーワードの指定方法を選択します。初期値は「文字列」です。
- 「文字列」:入力したキーワードを、すべてのレコードで探します(7)。
- 「フィールド」:選択したフィールドの値をキーワードにして、レコードごとに探します(8。「◇キーワード抽出の結果」参照)。
- 切り替えても、もう一方の入力内容は残ります。
- 7キーワード(文字列):探すキーワードを入力します。下に入力方法の説明が表示されます。
- 複数のキーワードは、半角の「,」で区切ります(例:「東京,大阪」)。
- 空白もキーワードの一部です(「東京, 大阪」では、先頭に空白がある「 大阪」を探します)。
- 「”」は使用できません。キーワードは「,」も含めて64文字までです(超えると実行時にエラーになります)。
- 8キーワードのフィールド(フィールド):キーワードが入っているフィールドを選択します(「フィールド」を選択すると表示されます。下図参照)。
- 各レコードの、このフィールドの値(「,」区切り)が、そのレコードのキーワードになります。
- このフィールドは、作成するテーブルの最後に出力されます(ほかの設定で出力される場合を除きます)。
- 9大小文字区別(必須):大文字・小文字を区別するかを選択します。初期値は「区別しない」です。
- 「区別しない」:「tokyo」で「Tokyo」「TOKYO」も一致します。
- 全角・半角は、どちらの場合も区別されます(「TOKYO」と「TOKYO」は一致しません)。
- 10《式ビルダー》ボタン:「式ビルダー」画面を開き、フィールドや関数を選んで条件式を作成できます。
- 11条件式(任意):出力するレコードの条件を入力します。空欄の場合は、すべてのレコードが出力されます。
- 入力中に、関数やフィールドの候補が表示されます(Ctrl+Spaceで表示、Escで閉じます)。
- 「×」で入力内容を消去します。正しい条件式であることを確認すると、緑の「✓」が表示されます。
- 12《検証》ボタン:条件式が正しいかを確認します(Ctrl+Enter)。誤りがある場合は、メッセージが表示されます。
- 13ファイル保存先(必須):作成するテーブルの名前を入力します。結果は必ずテーブルに保存されます。
- テーブル名だけの場合は「04_table」フォルダに、「フォルダ名¥テーブル名」の場合はそのフォルダに作成されます。フォルダがない場合は作成されます。
- 拡張子(.hdf5)は省略できます。「04_table」フォルダ以外の場所には保存できません。
- テーブル名の長さは、64文字までです。
- 記号(「-」「.」「#」など)や全角スペースは使用できません。名前の最後に「¥」「/」、途中に「..」は入力できません。
- 元のテーブルと同じ名前は使用できません(大文字・小文字やフォルダが違っても同じ名前とみなされます)。
- 同じ名前のテーブルがすでにある場合は、上書きしてよいかの確認メッセージが表示されます。「いいえ」を選択すると、実行せずに画面に戻ります。
- 14《参照》ボタン:保存画面を開き、保存先を選択できます。
- 15コマンド:現在の設定で実行されるコマンドが表示されます(「◇操作ログ」参照)。「検索対象フィールド」を選択すると表示されます。
- 16《コピー》ボタン:コマンドをクリップボードにコピーします。
- 17《キャンセル》ボタン:実行せずに画面を閉じます(Escキー)。確認メッセージで「はい」を選択すると閉じます。
- 18《実行》ボタン:実行します(Enterキー)。テーブルが作成されると、画面が閉じ、作成したテーブルが開きます。
「検索する文字列」で「フィールド」を選択した場合
キーワードの入力欄の代わりに、フィールドの一覧(8)が表示されます。一覧には、テーブルのすべてのフィールドがテーブルの順に表示されます。

キーワード抽出の結果
設定によって、結果は次のようになります。
「大小文字区別」の違い
「区別しない」の場合は、英字の大文字・小文字の違いを無視して探します。例は、キーワード「tokyo」の場合です。
| 摘要 |
|---|
| tokyo office |
| Tokyo-Branch |
| TOKYO 店 |
→
| 摘要 | キーワード数_摘要 | キーワード_摘要 | 検索文字列 |
|---|---|---|---|
| tokyo office | 1 | tokyo | tokyo |
| Tokyo-Branch | 1 | tokyo | tokyo |
| TOKYO 店 | 0 | tokyo |
- 「区別する」の場合は、「tokyo office」だけが一致します(「Tokyo-Branch」のキーワードの数は「0」)。
- 「キーワード_摘要」には、データの文字ではなく、入力したキーワードの文字(「tokyo」)が出力されます。
- 全角の「TOKYO」は、どちらの場合も一致しません。
「フィールド」を選択した場合
各レコードの「検索語」の値をキーワードにして、同じレコードの「摘要」を探します。「検索語」は最後に出力されます。
| 摘要 | 検索語 |
|---|---|
| 東京本社 売上 | 東京,大阪 |
| 大阪支店 | 東京 |
| 東京と大阪と東京 | |
| tokyo office | TOKYO |
| Tokyo-Branch | tokyo,福岡 |
→
| 摘要 | キーワード数_摘要 | キーワード_摘要 | 検索語 |
|---|---|---|---|
| 東京本社 売上 | 1 | 東京 | 東京,大阪 |
| 大阪支店 | 0 | 東京 | |
| 東京と大阪と東京 | 0 | ||
| tokyo office | 1 | TOKYO | TOKYO |
| Tokyo-Branch | 1 | tokyo | tokyo,福岡 |
- 「検索文字列」は出力されません。
- キーワードのフィールドが空欄のレコードは、キーワードの数が「0」になります。
「検索対象フィールド」を複数選択した場合
選択したフィールドごとに、別々にキーワードを探します。例は、「摘要」「検索語」を選択し、キーワード「東京」の場合です。
| 摘要 | キーワード数_摘要 | キーワード_摘要 | 検索語 | キーワード数_検索語 | キーワード_検索語 | 検索文字列 |
|---|---|---|---|---|---|---|
| 東京本社 売上 | 1 | 東京 | 東京,大阪 | 1 | 東京 | 東京 |
| 大阪支店 | 0 | 東京 | 1 | 東京 | 東京 | |
| 東京と大阪と東京 | 1 | 東京 | 0 | 東京 |
- フィールドは、「検索対象フィールド」(選択した順。それぞれの後ろにキーワードの数とキーワード)、「その他出力フィールド」(選択した順)、「検索文字列」またはキーワードのフィールドの順に並びます。
「条件式」を入力した場合
条件に合うレコードだけが出力されます。条件に合うレコードは、キーワードが見つからなくても出力されます。例は、キーワード「東京,大阪」、条件式「[商品No] = “A01″」の場合です。
| 売上日 | 商品No | 摘要 |
|---|---|---|
| 2024/04/10 | A01 | 東京本社 売上 |
| 2024/04/12 | B02 | 大阪支店 |
| 2024/05/20 | A01 | 東京と大阪と東京 |
| 2024/05/25 | C03 | tokyo office |
→
| 摘要 | キーワード数_摘要 | キーワード_摘要 | 商品No | 検索文字列 |
|---|---|---|---|---|
| 東京本社 売上 | 1 | 東京 | A01 | 東京,大阪 |
| 東京と大阪と東京 | 2 | 東京,大阪 | A01 | 東京,大阪 |
キーワードの一致のしかた
キーワードは、フィールドの値の一部に含まれていれば一致します。値とキーワードは、次のように比べられます。
| キーワード | フィールドの値 | 結果 |
|---|---|---|
| 「東京」 | 東京本社 売上 | 一致します(値の一部) |
| 「東京」 | 東 京駅 | 一致しません(値の中の空白も区別) |
| 「 大阪」(先頭が空白) | 大阪支店 | 一致しません(キーワードの空白も区別) |
| 「tokyo」 | TOKYO 店 | 一致しません(全角・半角は区別) |
| 「100」 | 1000.50(数値型) | 一致します(数値は文字として比較) |
| 「2024/01」 | 2024/01/05(日付型) | 一致します(日付は「yyyy/mm/dd」の文字) |
- 「,東京,,」のように「,」の間が空の部分は無視されます。同じキーワードを2回入力しても、1つとして数えます。
- キーワードが「,」だけの場合は、エラーにはならず、すべてのレコードのキーワードの数が「0」になります。
入力内容に誤りがある場合
《実行》ボタンをクリックしたときに、保存先が空欄、「検索対象フィールド」が選択されていない、キーワードが空欄または「”」を含むなどの誤りがあると、画面の左下にメッセージが表示され、該当する項目が赤枠で示されます。項目を修正するとメッセージは消え、《実行》ボタンが使用できるようになります。

- 条件式に誤りがある場合(フィールドがない、文字と数値を比較しているなど)は、実行時に誤りの内容を示す画面が表示されます。画面は閉じないので、条件式を修正してもう一度実行してください。
- キーワードが64文字を超える場合も、実行時にエラーの内容を示す画面が表示されます。
操作ログ
OPEN "元のテーブル" KEYWORDEXTRACT "キーワード" 0 SEARCH FIELDS [フィールド1] ・・・ OTHER FIELDS [フィールド2] ・・・ IF 条件式 TO "保存先" OPEN
各キーワードの意味は、次のとおりです。
| キーワード | 内容 | 設定内容 |
|---|---|---|
| OPEN “元のテーブル” | キーワードを探すテーブルを開きます | 1 |
| KEYWORDEXTRACT “キーワード” | 探すキーワード(「文字列」の場合) | 7 |
| KEYWORDEXTRACT [フィールド] | キーワードのフィールド(「フィールド」の場合) | 8 |
| 0 / 1 | 大小文字区別。0:区別しない、1:区別する | 9 |
| SEARCH FIELDS [フィールド1] ・・・ | 検索対象フィールド。選択した順に記述します | 3 |
| SEARCH ALLFIELDS | すべてのフィールドでキーワードを探します | 3 |
| OTHER FIELDS [フィールド2] ・・・ | その他出力フィールド。選択した順に記述します | 5 |
| OTHER ALLFIELDS | すべてのフィールドを出力します | 5 |
| IF 条件式 | 出力するレコードの条件 | 11 |
| TO “保存先” | 作成するテーブルの名前(保存先) | 13 |
| OPEN(最後) | 作成したテーブルを開きます | ― |
- 「フィールド」の場合は、「”キーワード”」の代わりに「[フィールド]」と記述されます。
- すべてのフィールドを選択した場合は、「FIELDS [ ] ・・・」の代わりに「ALLFIELDS」と記述されます。
- 下線部は、「その他出力フィールド」を選択した場合、条件式を入力した場合に記述されます。
コマンドを直接記述する場合(スクリプトなど)
- キーワードとテーブル名は「”」で、フィールド名は「[ ]」で囲んで記述します。キーワードの中に「”」は記述できません。
- キーワードは空にできません(「””」はエラーになります)。「,」も含めて64文字までです。
- 「大小文字区別」は「0」または「1」で記述します。ほかの値はエラーになります。
- 「SEARCH」と「TO “保存先” OPEN」は省略できません。最後の「OPEN」がない場合や、「TO SCREEN」(画面に表示)はエラーになります。
- テーブルにないフィールドを記述したり、保存先を元のテーブルと同じ名前(大文字・小文字の違いを含む)にしたりするとエラーになります。
オプションの例(「◇キーワード抽出の結果」と同じテーブル。「TO “保存先” OPEN」は省略)
| コマンドの記述 | 結果 |
|---|---|
| KEYWORDEXTRACT “東京,大阪” 0 SEARCH FIELDS [摘要] OTHER FIELDS [商品No] | 「◇機能」の例 |
| KEYWORDEXTRACT “tokyo” 0 SEARCH FIELDS [摘要] | 「Tokyo-Branch」も一致します |
| KEYWORDEXTRACT “tokyo” 1 SEARCH FIELDS [摘要] | 「tokyo office」だけが一致します |
| KEYWORDEXTRACT [検索語] 0 SEARCH FIELDS [摘要] | 各レコードの「検索語」の値で探します |
| KEYWORDEXTRACT “東京” 0 SEARCH FIELDS [摘要] [検索語] | 「摘要」「検索語」の両方で探します |
| … IF [商品No] = “A01” | 「商品No」が「A01」のレコードだけ |
例
OPEN "売上¥売上明細" KEYWORDEXTRACT "東京,大阪" 0 SEARCH FIELDS [摘要] OTHER FIELDS [売上日] [商品No] TO "売上¥売上明細_キーワード" OPEN KEYWORDEXTRACT [検索語] 1 SEARCH ALLFIELDS IF [売上日] >= `20240401` TO "売上¥売上明細_検索語" OPEN