マッチコード

一致文字列は、デコードされたデータとの一致を試みます。 (フォーマットされた出力データとの照合は試行されません。)

 

注:マッチコードは、単発読み取り開始/終了カスタムの各モードでのみ使用できます。プレゼンテーションモードや連続読み取りモードでは使用できません。

 

比較文字列エディタを開くには、セットアップビューに進み、下に示すように、マッチコードをオンにします。

 

次に、モードリンク(下の例では標準として表示されている)をクリックし、比較文字列エディタを開きます。

 

 

比較文字列エディタで、比較オプションモードリンクをクリックし、比較文字列モード – 標準ワイルドカード、またはシーケンシャルを選択します。

 

 

標準モード、ワイルドカードモード、およびシーケンシャルモード

標準モードを使用すると、比較文字列データベースで文字列を定義して、バーコードの全体または一部を検索することができます。

 

ワイルドカードモードを使用すると、ワイルドカードとプレースホルダーを使用して、カスタムマッチを作成することができます。

 

ワイルドカードは1文字で、0文字またはそれ以上の文字を表わします。プレースホルダーは1文字で、1文字のみを表わします。

 

シーケンシャルモードは、シンボルまたはシンボルの一部を順番に読むようにリーダに指示します。

 

 

標準モード

 

標準モード設定全部一致を選択します。

 

比較文字列データベースに、バーコードをスキャンしたときに表示されるデコードデータを正確に入力します。「全部一致」では、バーコードの長さと文字の順番が、比較文字列データベースに入力された文字と一致した場合に正しく動作します。

 

次に、標準モード設定部分一致を選択します。スキャンしているバーコードに基づいて、開始位置と長さを選択します。

 

「部分一致」では、比較文字列データベースの開始フィールドと長さフィールドによって定義した文字列と、テキストの文字列が正確に一致するかが検索されます。

 

たとえば、デコードされたシンボルが1234567、開始=1、長さ=2、比較文字列データベースの入力が12である場合、文字12は開始フィールドと長さフィールドで定義したバーコードデータの一部であるので、一致したことになります。

 

開始フィールドと長さフィールドを変更させて、ご使用のバーコードデータの一部で、部分一致が行えるか試してみてください。

 

全部一致部分一致の両方で、一致が成功または失敗すると、カスタムテキストを出力することができます。一致した時不一致の時をクリックすると、このフィールドを起動したり編集することができます。

 

比較文字列データベースにいくつか文字列を入力すると、アプリケーションはそれら全部について一致を試みます。一致が1回成功すると、それ以外の失敗がすべて無視され、一致が成功したと見なされます。

 

 

ワイルドカードモード

 

ワイルドカードモードでは、ワイルドカードとプレースホルダーを使用して一致を検索することができます。デフォルトのワイルドカードは*で、プレースホルダーは?です。

 

比較文字列データベースにテキストを入力する際に、ワイルドカードとプレースホルダーの定義を使用することができます。

 

1個のワイルドカードは、あらゆるタイプの0文字以上の文字を表わします。たとえば、*TEST*では、バーコードデータ内で、その前後の文字数に関係なく、テキスト「TEST」が検索されます。

 

*TESTでは、バーコードデータ内で、「TEST」の前の文字数にかかわらず、「TEST」で終わるテキストが検索されます。

 

TEST*では、バーコードデータ内で、「TEST」の後の文字数にかかわらず、「TEST」で始まるテキストが検索されます。

 

データ1234567を含むバーコードで、123*によってデータ全体を検索すると、一致したと見なされます。

 

同じバーコードデータを*123で検索すると、123はバーコードの先頭に現れ、このデータ文字列はバーコードの末尾にある123を持つコードと一致するため、失敗します。ワイルドカード文字*は、常に0文字以上の不明な文字を表わすことに注意してください。

 

では、*YOURTEXT*を使用して、スキャン中のバーコードの部分を一致させてみましょう。バーコードの中間にテキスト「YOURTEXT」が現れると、一致すると見なされます。

 

1個のプレースホルダーは、あらゆる種類の文字1字を表わします。たとえば、???TESTでは、「TEST」の文字の前に、種類に関係なく3文字があるバーコードが検索されます。???TE?Tでは、「S」のあった場所に任意の文字があるバーコードが検索されます。

 

比較文字列データベースの入力フィールドで、プレースホルダーとワイルドカードを一緒に使用することができます。その場合も、前述通り、ワイルドカードは0文字以上の不明な文字を表わし、プレースホルダーは1文字の不明な文字を表わします。

 

下に、ワイルドカードを使用した複雑な一致の例を示します。デフォルトでは、ワイルドカードとプレースホルダーはそれぞれ*?ですが、再定義することもできます。

 

 

上の例で一致させようとしているバーコードデータはEN-1234_AreYouReadingThis en_US 1234でした。

 

この一致のロジックは下のように図示できます。

 

[任意の文字数][Are][任意の文字数][This][任意の文字数][US][5文字]

 

* = 任意の文字数(この場合EN-1234_

 

Are

 

* = 任意の文字数(この場合YouReading

 

This                 

 

* = 任意の文字数(この場合en_

 

US

 

?????= 5 文字(この場合 1234)

 

 

シーケンシャルモード

 

シーケンシャルモードは、リーダに対して、検索のたびに、シンボルまたはシンボルの一部を、一続きの番号と比較するよう指示します。

 

シーケンシャルモードが加算に設定されている場合: 読み取りが成功するたびに、リーダは次のシンボルに対して、探している数値を1ずつ加算します(これは、詳細設定 > マッチコード > マッチコードタイプ > シーケンスステップの間隔 で調整できます)。

 

シーケンシャルモードが減算に設定されている場合:読み取りが成功するたびに、リーダは次のシンボルに対して、探している数値を1ずつ減算します (これは 詳細設定 > マッチコード > マッチコードタイプ > シーケンスステップ間隔 で調整できます)。

 

読み取りなし時にシーケンスが有効な場合、リーダがシンボルをデコードできない場合でも、リーダは加算または減算を行います。

 

ミスマッチ時にシーケンスが有効な場合、リーダがシンボルをデコードしても、探していた現在の数値と一致しない場合でも、リーダは加算または減算を行います。

 

注:マッチコードタイプシーケンシャルに設定されている場合、リーダは、ユーザー定義の設定に関係なく、読み取りシンボル数があたかも1に設定されるような挙動をします。

 

 

比較文字列データベース

比較文字列データベースには、最大30個の異なる文字列を保持できます。