FIND/FX 基本コマンド
FIND コマンドは、出現するストリングや値を検出します。
FIND コマンドは、コマンドの省略形 (例: F または FI) を使用するか、またはスラッシュ (「/」) 文字を入力することにより指定することができます。
テンプレートで定義された出力フォーマットを使用して表示される日時フィールドで、File Manager は、表示された値から FIND コマンドで指定されたストリングを検索します。
FX コマンド (表示、編集、および検索/変更ユーティリティーでのみ使用可能) を使用すると、「Extended Command Entry (拡張コマンド入力)」パネルが表示されます。このパネルでは、コマンド行に収まらないような長い引数を入力することができます (詳しくは、FIND での長いストリングの処理を参照)。
複数の (& または AND) 演算と (| または OR) 演算は、厳密に左から右に評価されますが、AND と OR を同じ FIND ステートメントで混合してはなりません。演算子優先順位はなく、括弧を使用して計算の順序を変更することはできません。
構文
- 表示または編集での FIND コマンド
-
表示および編集では、FIND 基本コマンドは、データから特定の数値が含まれている文字ストリング・フィールドまたは数値フィールド (SNGL 表示形式または TABL 表示形式の場合のみ) を検索します。ストリングまたは数値が見つかると、FIND コマンドはそのストリングまたは数値フィールドの先頭にカーソルを合わせて、必要なら自動的にスクロールして見つかったデータが見えるようにします。
FIND コマンドは、データ・セット全体の検索ストリングまたは数値の出現箇所のすべてを強調表示します。強調表示をオフにするには、RESET FIND コマンドを入力します。
次に現れる同じストリングを検索するには、「RFind」機能キー (F5) を押し、FIND * と入力するか、パラメーターを指定しないで FIND コマンドを入力します。ストリングが見つからなければ、メッセージが表示されます。注:- エディターでパラメーターを指定せずに FIND 基本コマンドを入力すると、File Manager により、引数を入力できる「Extended Command Entry (拡張コマンド入力)」ポップアップ・パネルが表示されます。
FIND *では、同じパラメーターを持つ前の FIND コマンドを繰り返しません。FIND *では、同じストリング引数を持つ FIND コマンドを繰り返しますが、他のすべてのパラメーターは、指定されないかぎりデフォルト値に戻ります。- Fnot を使用して、一致するストリングを含まないフィールドまたはレコード領域の最初のバイトを検索します。
FIND コマンドによる桁、フィールド、またはレコードの検索の制限について詳しくは、編集変更の影響の制限を参照してください。
表示または編集を使用している場合、FIND 基本コマンドの構文は次のようになります。図 1. Syntax in View or Edit column range (all display formats)field list or range (SNGL or TABL display format)label range (Edit only)注:- 1 パラメーターは、任意の順序で指定できます。
- FCH ユーティリティーでの FIND コマンド
-
「Find/Change Utility (検索/変更ユーティリティー)」では、FIND コマンドは選択されている データ・セットやデータ・セット・メンバーの内容を検索します。一致したストリングが検出されると、結果は、ストリングが検出されたメンバーの名前とレコード番号を示すレポートとして画面に表示され、選択されたメンバーのリストが削減されて、一致するもののみを含むリストになります。
「Find/Change Utility (検索/変更ユーティリティー)」を使用しているとき、コマンドの構文は次のようになります。
図 2. Syntax in the Find/Change Utility OR clausesAND clauses関連トピック
- 「Catalog Services (カタログ・サービス)」の「Data Set List (データ・セット・リスト)」、「Display VTOC: Data Set List (VTOC の表示: データ・セット・リスト)」、「AFP Browse (AFP ブラウズ)」、および「Memory Browse (メモリー・ブラウズ)」での FIND コマンド
「Catalog Services (カタログ・サービス)」のData Set List (: データ・セット・リスト)」パネルまたは「Display VTOC: Data Set List (VTOC の表示: データ・セット・リスト)」パネルでは、FIND コマンドはデータ・セット名のリストを検出します。一致するストリングを含む項目名が検出されると、リストがスクロールされ、一致したデータ・セットが先頭位置に表示されます。「Display VTOC Data Set List (VTOC データ・セット・リストの表示)」パネルでは、ストリング引数が許可され、* および % のワイルドカード文字を含めることができます。FIND 引数は、そのようなワイルドカード文字に対するデフォルトのシステム突き合わせ規則を使用して、データ・セット名と突き合わせされます。
AFP ブラウズ・ユーティリティーでは、FIND 基本コマンドは、ブラウズするデータ内で、文字ストリングの次の出現箇所を検索します。文字ストリングがデータ行で見つかると、文字ストリングは最上行に表示され、 カーソルはストリングの先頭に置かれます。
メモリー・ブラウズ・ユーティリティーでは、FIND 基本コマンドは、ブラウズしているデータ内で、文字ストリングの次の出現箇所を検索します。文字ストリングが見つかると、文字ストリングは最上部に表示されます。「Location (ロケーション)」フィールドは、アドレスを示します。同じストリングの次の出現箇所を見つけるには、RFIND コマンドを使用するか、引数を付けずに FIND コマンドを入力します。ストリングが見つからなければ、メッセージが表示されます。
「Catalog Services (カタログ・サービス)」の「Data Set List (データ・セット・リスト)」、「Display VTOC (VTOC の表示)」、「AFP Browse (AFP ブラウズ)」、および「Memory Browse (メモリー・ブラウズ)」パネルでは、コマンドの構文は次のようになります。
図 3. Syntax - メンバー選択パネルでの FIND コマンドおよび「Load Module Information (ロード・モジュール情報)」パネル
-
メンバー選択パネルでは、FIND コマンドは通常、表示されているページの先頭またはカーソル位置 (カーソルが表示のデータ部分内にある場合) から開始して、表示されているメンバー名の文字ストリングの次の出現箇所を検出します。「Load Module Information (ロード・モジュール情報)」パネルでは、ディスプレイに表示される項目のリストに同じ規則が適用されます。
File Manager は、検出されたストリングの先頭にカーソルを配置します。必要に応じて、自動スクロールが行われ、そのストリングがビュー内に表示されます。
図 4. Syntax - member selection and Load Module Information panels - 選択リストでの FIND コマンド
-
選択リストでは、FIND コマンドは、表示されているページの先頭から、またはカーソル位置 (カーソルが表示のデータ部分内にある場合) から開始して、表示されている選択リストの任意の桁で文字ストリングの次の出現箇所を検出します。
カーソルは、検出されたストリングを含む行に置かれます。必要に応じて、自動スクロールが行われ、そのストリングがビュー内に表示されます。
図 5. Syntax - selection lists - * (アスタリスク)
- 検索ストリングとして、直前の FIND コマンドに指定した検索ストリングを使用します。
- ストリング
- 検索ストリングは、100 文字以下でなければなりません。あるいは、「Member Selection List (メンバー選択リスト)」で使用される場合、メンバー名列の幅を超えてはなりません。ストリングは以下のいずれかが可能です。
- 文字数 100 文字以下。
- 空ストリング、すなわち、ストリングを指定せずに FIND を使用します。直前の FIND、 CHANGE、または EXCLUDE コマンドで指定した検索ストリングが、検索ストリングとして使用されます。検索ストリングの指定のない FIND ALL は、RESET FIND を実行し、直前の FIND、CHANGE、または EXCLUDE コマンドで強調表示されてもそれをオフにします。メンバーまたは WebSphere® MQ 選択リストには適用されません。
- 引用符で開始または終了せず、ブランクまたはコンマを含まない文字ストリング。ストリングの大/小文字は無視されます。同一文字の英大文字表記と小文字表記は一致します。例えば、次のコマンドは、ストリング「
black」、「Black」、および「BLACK」を検出します。FIND black - 引用符で囲まれた文字ストリング。このストリングには、ブランクとコンマを入れることができます。ストリングの大/小文字は無視されます。例えば、
'Exact string'は'exact string'と一致します。 - 「C」と、その後に引用符で囲まれた文字ストリング (C'Frog')、または、引用符で囲まれた文字ストリングと、その後に「
C」('Frog'C)。このストリングには、ブランクとコンマを入れることができます。ストリングは (大文字/小文字も含めて) 完全に一致しなければなりません。例えば、C'Exact string'はC'exact string'と一致しません。 - DBCS ストリングまたは DBCS と非 DBCS の混合ストリング。最初の文字としてのシフトアウト (X'OE') または最後の文字としてのシフトイン (X'OF') は、検索ストリングの一部としては破棄されます。(「Catalog Services List (カタログ・サービス・リスト)」パネルまたは「Display VTOC (VTOC の表示)」パネルではサポートされていません。)メンバーまたは WebSphere® MQ 選択リストには適用されません。
- P が前または後に付いている単一引用符または二重引用符で囲まれた、文字そのものではなく検索対象のストリングのタイプを表すピクチャー・ストリング。それ自体を表すブランク、英字、および数字、あるいは、それぞれ文字のクラスを表す下記の任意の特殊文字を含めることができます。
- =
- 任意の文字。
- @
- 英字。
- #
- 数字。
- $
- 特殊文字。
- & notsym;
- 非ブランク文字。
- .
- 無効文字。
- -
- 非数値文字。
- <
- 小文字英字。
- >
- 大文字英字。
FIND コマンドで使用されるピクチャー・ストリングの例:
find p'.' 73 80- 73 桁目から 80 桁目の無効文字を検索します。
find p'###'- 3 桁の数字 (例えば、101 は該当しますが、99 は該当しません) を検索します。
find '@1'p 1- 1 桁目のラベル a1、b1、c1 などを検索します。
find p'<'- 小文字英字を検索します。
find p'¬' 72- 72 桁目の非ブランク文字を検索します。
この表記が使用される場合、数字、ビット、およびユニコードのフィールド (SNGL および TABL 表示形式) は、検索処理から除外されます。
- 「X」と、その後に引用符で囲まれた 16 進数ストリング (X'C1C2')、または、引用符で囲まれた 16 進数ストリングと、その後に「
X」('C1C2'X)。メンバー選択リストには適用されません。 - 文字そのものではなくストリングのパターンとして指定するには、正規表現ストリングの前または後に R を追加し、単一引用符または二重引用符で囲みます。このストリングは、C ランタイム・ライブラリーでサポートされいる、C ランタイム・ライブラリーの regcomp 関数で許可されている形式に準拠している必要があり、かつ C ランタイム・ライブラリーが使用可能である必要があります。大/小文字を区別した検索を行うには、RC を使用します。正規表現の例は次のとおりです。
- 列 1 ~ 10 内の「cat」または「hat」
-
r'[ch]at' 1 10 - 「payer」または「payee」
-
r'pay(er!ee)' - 「band」または「bald」、ただし「bad」を除く
-
'ba.d'r - 「feed」または「weed」、ただし「fed」または「wed」を除く
-
r'[fw]e{2}d' - 「The」または「She」、ただし「the」または「she」を除く
-
rc'[TS]he'
この SETLOCALE 関数は、regcomp 関数が正規表現をコンパイルする際に使用するロケールを定義するために使用されます。SETLOCALE 関数に使用されるロケールは、端末 CCSID に基づいています。ロケールは、次の端末 CCSID でサポートされています。00037 00871 01123 01156 00273 00875 01140 01157 00277 00924 01141 01158 00278 00930 01142 01160 00280 00933 01143 01165 00284 00935 01144 01364 00285 00937 01145 01371 00290 00939 01146 01388 00297 01025 01147 01390 00424 01026 01148 01399 00425 01027 01149 04971 00500 01047 01153 05123 00838 01112 01154 08482 00870 01122 01155 12712別の CCSID を持つ端末を使用している場合、正規表現をコンパイルするときにデフォルトの C ロケールが使用されます。 - 数値 (SNGL または TABL 表示形式の場合に、フィールド参照を指定することによって検索を制限するときと検索中のフィールドが数値フィールドであるときのみ)。詳しくは、「数値フィールドの検索」を参照してください。メンバーまたは WebSphere® MQ 選択リストには適用されません。
- ALL
- データの先頭から順方向に検索します。FIRST と同じですが、ALL では検索したレコード中の string の合計オカレンス数も表示する点が違います。注:
- ALL を指定しても、非表示になっているか、あるいはシャドー行によって表される抑制レコードや非選択レコードは検索されません。
- ALL パラメーターは、FIND コマンドと併用される場合には、再帰的です。すなわち、コマンド FIND ALL 'SS' をストリング 'SSS' に適用すると、最初の 'SS' と 2 番目の 'SS' の 2 つの出現箇所を検索します。
- 検索ストリングの指定のない FIND ALL コマンドは、RESET FIND コマンドを実行し、直前の FIND、CHANGE、または EXCLUDE コマンドで強調表示されてもそれをオフにします。
- EX
- 除外されたレコードのみ。
- FIRST
- データの先頭から string の最初のオカレンスを検索します。
- LAST
- データの最後から string の最後のオカレンスを逆方向に検索します。
- label1
- レコード範囲の始まりを識別するラベル。ラベルはピリオド (.) で始まり、その後に 1 から 4 文字の英字 (数字または特殊文字ではない) を続ける必要があります。文字「Z」で始まるラベルはエディター割り当てラベルを示します。
- label2
- レコード範囲の終わりを識別するラベル。ラベルはピリオド (.) で始まり、その後に 1 から 4 文字の英字 (数字または特殊文字ではない) を続ける必要があります。文字「Z」で始まるラベルはエディター割り当てラベルを示します。
- NEXT
- カーソル位置 (カーソルが画面のデータ部分内にある場合) から、あるいは画面に表示されている一番上のレコードの先頭から、string の次のオカレンスを順方向に検索します。
- NX
- 非除外レコードのみ。
- PREV
- カーソル位置 (カーソルが画面のデータ部分内にある場合) から、あるいは画面に表示されている一番上のレコードの先頭から、string の次のオカレンスを逆方向に検索します。
- PREFIX
- データ内の接頭部として出現する場所で、その検索ストリングに突き合わせます。接頭部にするには、一致したテキストの前に非英数字が付くか、あるいは一致したテキストが行またはフィールドの先頭である必要があり、その後に英数字が続く必要があります。
- SUFFIX
- データ内の接尾部として出現する場所で、その検索ストリングに突き合わせます。接尾部にするには、一致したテキストの前に英数字が付く必要があり、後に非英数字が続くか、一致したテキストが行またはフィールドの終端である必要があります。
- WORD
- データ内のワードとして出現する場所で、その検索ストリングに突き合わせます。ワードにするには、一致したテキストの前に非英数字が付くか、あるいは一致したテキストが行またはフィールドの先頭である必要があり、その後に非英数字が続くか、あるいは一致したテキストが行またはフィールドの終端である必要があります。
- col1
- 検索する桁の範囲内に含まれる最初の桁。1 以上であり、最大レコード長以下である必要があります。桁の範囲を指定して、データが SNGL または TABL 形式で表示されると、検索がデータの発生順に実行されます (これはフィールドの表示順ではないことがあります)。
SNGL 表示形式または TABL 表示形式の場合に桁の範囲を指定すると、数値フィールドの場合でも、ストリング比較が実行されます。
注:FIND 基本コマンドを「Find/Change Utility (検索/変更ユーティリティー)」で使用する際に「JCL Source format (JCL ソース形式)」オプションが選択されている場合、検索される桁数は 3 から 71 に設定されます (ステートメントが JCL ステートメントでない場合を除く)。ステートメントは、先頭に「/*」または「//」ストリングが示されている場合は JCL ステートメントとみなされます。ステートメントの先頭にどちらのストリングも示されていない場合は JCL ステートメントとみなされず、その場合は FIND (または CHANGE) コマンドで指定された、あるいは BOUNDS コマンドを使用して事前設定された任意の桁範囲が使用できます。桁範囲が指定されていない場合は、全レコードが検索されます。 - col2
- 検索される桁の範囲内に含まれる最後の桁。col1 以上であり、最大レコード長以下でなければなりません。
エディターでは、col2 が指定されないと、デフォルトで col1 の値が使用され、1 桁という検索範囲が作成されます。
FCH ユーティリティーでは、col2 が指定されないと、デフォルトで レコード長が使用され、col1 からレコードの終わりまでという検索範囲 が作成されます。
- #ALL
- 各フィールドが、テンプレート属性に従って検索されます。
- ref
- フィールド参照で、検索に含まれるフィールドを指定します。例えば、次のようになります。
#3。フィールドが配列である場合に、配列内の全項目を検索するには、単に、添字なしでフィールド参照を指定します。一次元配列内の項目を検索するには、添字を括弧で囲んで指定し、検索する出現箇所を識別できるようにします。例えば、次のようになります。
#5(3)。フィールドが多次元配列の一部である場合は、配列のそれぞれの次元ごとに添字を指定する必要があります。例えば、次のようになります。#7(2,3)。複数フィールド参照は括弧 () で囲むか、あるいはスペースの介入なしでコンマで区切られていなければなりません。詳しくは、「指定フィールドへの検索の制限」を参照してください。
SNGL 表示形式または TABL 表示形式で、フィールド参照を指定するかフィールド参照も桁範囲も指定しないと、数値フィールドの検索時に、検索ストリングは数値として解釈され、数値比較が実行されます。文字フィールドの検索時には、ストリング比較が実行されます。つまり、File Manager のテンプレート属性に基づいて検索が実行されます。詳しくは、「数値フィールドの検索」を参照してください。
- ref_1
- フィールドの範囲の最初のフィールド参照。添え字にすることはできません。ref_1 フィールド参照値が、表示されている最小のフィールド参照値より小さい場合は、表示されている最小のフィールド参照値が使用されます。
- ref_2
- フィールドの範囲の最後のフィールド参照。添え字にすることはできません。ref_2 フィールド参照値が、表示されている最大のフィールド参照値より大きい場合は、表示されている最大のフィールド参照値が使用されます。
ref_1 および ref_2 フィールド参照値は、ハイフン (-) で区切る必要があります。ハイフンとフィールド参照値の間にスペースを使用することができます。
ref_1 の値が ref_2 より大きい場合は、検索プロセスはオペランドを取り消します。
- X
- EX と同じ。
使用箇所
- 「Browse (ブラウズ)」パネル
- 「Editor (エディター)」パネル
- 「Find/Change Utility (検索/変更ユーティリティー)」パネル
- 「Catalog Services Data Set List (カタログ・サービス・データ・セット・リスト)」パネル
- 「Display VTOC (VTOC の表示)」パネル
- 「AFP Print Browse (AFP 印刷ブラウズ)」パネル
- 「Memory Browse (メモリー・ブラウズ)」パネル
- 「Field Selection/Edit (フィールド選択/編集)」パネル
- 「Member Selection (メンバー選択)」パネル
- WebSphere 「MQ Managers (MQ マネージャー)」パネル
- WebSphere 「MQ Queue List (MQ キュー・リスト)」パネル
- 「Template Member List (テンプレート・メンバー・リスト)」パネル