データを文字列でグループ化する



LabVIEW 2018ヘルプ


発行年月: 2018年3月
製品番号: 371361R-0112
製品情報を参照

ダウンロード (Windowsのみ)


LabVIEW 2016ヘルプ
LabVIEW 2017ヘルプ
LabVIEW 2018ヘルプ
LabVIEW 2019ヘルプ
LabVIEW 2020ヘルプ

文字列とは、表示可能または表示不可能な一連のASCII文字です。文字列は、プラットフォームに依存しない形式の情報やデータです。文字列の一般的な利用例を次に示します。

  • 単純なテキストメッセージを作成する。
  • テキストコマンドを計測器に送信し、数値に変換する予定のASCII文字列またはバイナリ文字列のどちらかの形式でデータ値を返すことで計測器を制御する。
  • 数値データをディスクに保存する。数値データをASCIIファイルに保存するには、データをディスクファイルに書き込む前に、まず数値データを文字列に変換する必要があります。
  • ダイアログボックスでユーザに指示またはプロンプトを表示する。

フロントパネルでは、文字列は表、テキスト入力ボックス、およびラベルとして表示されます。LabVIEWには、文字列のフォーマット、構文解析、および他の編集を含む、文字列を操作するのに使用できる標準VIおよび関数が含まれています。

ASCIIコードと変換関数の詳細については、ASCIIコードのトピックを参照してください。

フロントパネルの文字列

文字列制御器および表示器をテキスト入力ボックスやラベルとして使用します。

文字列表示タイプ

フロントパネルで文字列制御器または表示器を右クリックして、以下の表にある表示タイプのいずれかを選択します。また、文字列制御器または表示器を右クリックして、ショートカットメニューから表示項目→表示形式を選択すると、表示タイプを示すグリフがオブジェクト上に表示されます。表には各表示タイプのサンプルメッセージも表示されています。

タイプグリフ 表示タイプ 説明 メッセージ
n 標準表示 制御器のフォントを使用して印刷可能な文字を表示します。表示できない文字は四角で表示されます。 4つの表示タイプがあります。
「\」は円記号です。
\ '\'コード表示 表示できないすべての文字を"\"コードで表示します。 There\sare\sfour\sdisplay\stypes.\n\\\sis\sa\sbackslash.
P パスワード表示 スペースを含むすべての文字をアスタリスク(*)で表示します。 ****************************
*****************
* 16進表示 各文字のASCII値を文字ではなく16進数で表示します。 5468 6572 6520 6172 6520 666F 7572 2064 6973 706C 6179 2074 7970 6573 2E0A 5C20 6973 2061 2062 6163 6B73 6C61 7368 2E

表制御器を使用して、フロントパネルに表を作成します。表の各セルは文字列であり、各セルは列と行で指定されます。したがって、表は文字列の2D配列の表示です。

以下の図は、表および表の各部を示します。

1 指標値で示されるセル
2 列見出し
3 垂直スクロールバー
4 水平スクロールバー
5 行見出し
6 水平指標
7 垂直指標

文字列を編集、フォーマット、構文解析する

文字列を編集するには、以下の手順のような方法で、文字列関数を使用します。

  • 文字列内の文字または部分文字列を検索、取得、置換する。
  • 文字列内のすべてのテキストを大文字または小文字に変更する。
  • 文字列内の一致パターンを検索して取り出す。
  • 文字列から1行を取り出す。
  • 文字列内のテキストを回転または逆にする。
  • 複数の文字列を連結する。
  • 文字列から文字を削除する。

文字列をプログラム的に編集する際のメモリ使用量を最小化する方法のヒントについては、「LabVIEWスタイルチェックリスト」を参照してください。文字列関数を使用して文字列を編集するサンプルについては、labview\examples\Strings\Strings.lvprojを参照してください。

文字列をフォーマットまたは構文解析する

別のVI、関数、またはアプリケーションでデータを使用するには、通常データを文字列に変換して、VI、関数、またはアプリケーションで読み取り可能な形式に文字列をフォーマットする必要があります。たとえば、Microsoft Excelでは、タブ、カンマ、またはスペースなどの区切り文字を含む文字列を使用できます。Excelは区切り文字を使用して、数値や語をセルに区切ります。

たとえば、「テキストファイルに書き込む」関数を使用して数値の1D配列をスプレッドシートに書き込む場合、配列を文字列にフォーマットし、各数値をタブなどの区切り文字で分割する必要があります。区切られたスプレッドシートに書き込むVIを使用すると、配列を文字列にフォーマットし、区切り文字を挿入できます。

以下のようなタスクを実行するには、文字列関数を使用します。

  • 複数の文字列を連結する。
  • 文字列から部分文字列を抽出する。
  • データを文字列に変換する。
  • ワープロや表計算アプリケーションで使用するために文字列をフォーマットする。

文字列をテキストおよびスプレッドシートファイルに保存するには、ファイルI/OのVIおよび関数を使用します。

形式指定子

多くの場合、文字列関数の形式文字列パラメータに1つまたは複数の形式指定子を入力して、文字列をフォーマットする必要があります。形式指定子とは、数値データと文字列の間の変換方法を指示するコードです。LabVIEWは、変換コードを使用して、パラメータのテキスト形式を指定します。たとえば、形式指定子%xは、16進整数を文字列に、文字列を16進整数に変換します。

文字列にフォーマット」関数および「文字列からスキャン」関数は、形式文字列入力に複数の形式指定子(拡張可能な関数に対する各入力または出力に1つずつ)を使用できます。

配列からスプレッドシート文字列に変換」関数および「スプレッドシート文字列を配列に変換」関数は、変換する入力が1つしかないため、形式文字列入力に1つの形式指定子しか使用しません。LabVIEWは、これらの関数にユーザが挿入した余分な指定子を特別な意味のない文字列として扱います。

数値と文字列データ

文字列データはASCII文字であり、数値データはASCII文字ではないという点で、数値データと文字列データは異なります。テキストファイルとスプレッドシートファイルには文字列のみが使用できます。テキストファイルまたはスプレッドシートファイルに数値データを書き込むには、まず数値データを文字列に変換する必要があります。

一連の数値を既存の文字列に追加するには、数値データを文字列に変換し、「文字列連結」関数または他の文字列関数を使用して、新しい文字列を既存の文字列に追加します。「文字列/数値変換」関数を使用して、数値を文字列に変換します。

文字列にはグラフまたはチャートに表示する一連の数値を含めることもできます。たとえば、チャートにプロットする数値セットを含むテキストファイルを読み取ることができます。ただし、これらの数値はASCIIテキストであるため、まず数値を文字列として読み取ってから、その文字列を数値のセットに変換して、数値をチャートにプロットする必要があります。

以下のブロックダイアグラムは一連の数値を含む文字列で、この文字列を数値に変換して数値の配列を作成し、その数値をグラフにプロットします。

文字列を検索する

文字列関数を使用して、正規表現で文字、単語、語句、および数値を文字列から検索します。正規表現を使用して、「cat」などのリテラル文字列、文字「c」で始まり文字「t」で終わる単語、または1つまたは複数の数字と後続する文字で始まる部分文字列など、特定のパターンに一致する文字列をテキストで検索することができます。

パターンで一致」関数および「パターンの検索と置換」VIを使用して、リテラル文字列または特殊文字正規表現入力に入力することによって、文字列を検索します。「文字列の検索と置換」関数を使用して、文字列でテキストを検索および置換します。

PCRE(Perl Compatible Regular Expression)構文を使用して、複雑な正規パターンマッチングには「正規表現を一致」および「文字列の検索と置換」関数を使用します「文字列の検索と置換」関数を右クリックして、ショートカットメニューから正規表現を選択して、上級正規表現の検索および置換文字列での部分的一致の置換を行うために関数を構成します。文字列で検出された部分一致をすべて表示するには、「正規表現を一致」関数の「サイズを変更」します。「パターンで一致」関数または「正規表現を一致」関数を使用して、文字列で正規表現を検索することができます。「正規表現を一致」関数では、「パターンで一致」関数より詳細な検索オプションを設定できますが、処理速度は低下します。

正規表現のサポートは、PCREライブラリパッケージにより提供されています。PCREライブラリパッケージ再配布時のライセンスの詳細については、目次タブから法的情報→著作権を選択して表示される著作権ページを参照してください。

RCRE(Perl Compatible Regular Expressions)については、PCREライブラリパッケージwww.pcre.org)を参照してください。



この記事は役に立ちましたか。

役に立たなかった