= 文字列探索 {FINd | IFInd | EXClude | IX | FNX | INX} [!] {探索文字列 | * | *e | *g | *L | *=Mn | *u | *=[n] | \esc} [探索位置] [& [!] 探索文字列2 [探索位置2] [-d[<|>]n] [all | next | + | prev | - | first | last] [-a[-]n] [-b[-]n] [-c[{L|R}m][{T|B}n]] [-j|-je] [-Llcmd] -m[n] [.lab1 .lab2] 探索位置:[l-column | LM | RM [r-column] | eol | maxeol] FIN :大文字/小文字 区別有 IFI :大文字/小文字 区別無(case Insensitive) EXC :Find後その行を非表示化 IX :IFind後その行を非表示化 FNX :非表示行を除くFINd. INX :非表示行を除くIFInd. ! :探索文字を含まない行を探索。 探索文字列:スペースを含む場合や以下に示す特殊用途の 文字列自身を探索する場合は引用府を使用して下さい 例えば "F '.exe'", "F 'set up'". 全行非表示化する時は省略可能("EXC all"でOK) 行末に限定する時は "F word\n"の様に\nを付ける。 行末を探すときは "F *\n"とする。 行末の "*" を探すときは F "*"\nとする。 & :2つの文字列を含む行の探索。例えば word1 & word2。 * :直前の探索コマンドと同じ文字列を探索 探索方向を変えて再探索する時等に使います 例えば f * prev. 探索範囲は前のは継承されません. *u :更新行を探索します *e :エラー行を探索します シフトエラー,行コマンドエラーなど. *g :現表示画面上でGREp コマンドで選択された行を探索。 *L :行コマンド "="で比較した結果の一致行(! と組み合わせれば 不一致行)、TCコマンドの "=="によるフィールド比較の 不一致行を探すときに使用できる。 *=[n] :同じ内容の行がn+1行以上続く個所を探索する。 比較桁も指定可能。nの省略値は1。 例えば、"x *= all" の後 "drop x all"とすれば重複の多い ファイルのファイルサイズを縮小できる。 "x *="コマンドでは最初の1行だけ表示のまま残すが これも非表示にするときは /b0 を指定する。 -aでマイナスを指定すると下方の行も残すことができる。 例えば -a-1 は 1行目と下から1行を残して間を非表示化。 *=Mn :画面分割で開いた2つのファイルで照合する。 (コマンド入力画面のファイルのキーが別の画面のファイル にあるか調べる)。 n:第二画面の照合キーカラム。 現画面のキーは探索範囲桁位置パラメータで指定する。 例) f *=M6 10 18 照合した場合現画面のキーを反転表示。 一度でも照合した第2画面の行はエラー表示 (行番号欄が反転,"f *e"で探せる)。 \esc :次の1文字エスケープシーケンスとヘキサ指定が可能. \a (ベル=0x07),\b (後退=0x08),\t (水平タブ=0x09) \n (改行=0x0a),\v (垂直タブ=0x0b), (改頁=0x0c) \r (復帰=0x0d),\x(偶数桁のヘキサ文字列) ヘキサ指定の例. \x8281 , \x09 , \x0c , 但し ファイル読み込み時に行区切り文字として取り 扱われた \x0d0a や \n は見つかりません. \aX などと他の文字と一緒には使えません. またテキストファイルではタブ(\x09)はー\x0920などと 他の文字と一緒には出来ません. IFIndでもFINd(大文字/小文字 区別有)と扱われます。 Esc解釈をさせたくない場合は "\t" 等と引用符を使用。 all :ファイル全体を探索 allkx :KeepX。ファイル全体を探索。 見つかった行が非表示行でも表示行にしない。 next :カ−ソル位置より下を探索,これが省略値 + :nextと同じ prev :カ−ソル位置より上を探索 - :prevと同じ first :ファイルの最初から探索,見つかった所にカーソルを移動 last :ファイルの最後から探索,見つかった所にカーソルを移動 .lab1/2 :行番号欄に設定したラベルを対で指定して探索行範囲を 限定する.行番号を使用しての範囲指定も可. l-column:探索範囲の左端桁位置. r-column:探索範囲の右端桁位置. LM :探索範囲を左マージンに限定 RM :探索範囲を右マージンに限定 eol :行末のみ探す。 探索文字がスペースを含むときに使用する。 ("a b"\n はエラーとなる) maxeol :最長行(複数行ありうる)の行末のみ探す。 -a[-] :探索文字列を含む行の後n行を表示化/非表示化する。 & 探索の時は 2 番目の文字列を含む行を基準とする。 "-"は前のn行を意味する, このとき -b を指定し &探索なら間の行数も加え合計が正でなければならない。 -b[-] :探索文字列を含む行の前n行を表示化/非表示化する。 & 探索の時は 1 番目の文字列を含む行を基準とする。 "-"は前のn行を意味する, このとき -a を指定し &探索なら間の行数も加え合計が正でなければならない。 -c[{L|R}m][{T|B}n] 左(L)からあるいは右(R)からm桁目、上(T)からあるいは 下(B)からn行目に探索文字列が表示されるように 画面スクロールする。 -cのみは -cR の意味。 省略値は現在の表示画面にあるときはスクロルしない、 ない時は行が中央に来るようにスクロールする。 -d[<|>]n:& のとき2つの文字列の間隔を指定する。n は行数。 -dn:ちょうどn行目に第二文字列がある。 -d>n:n+1行以上離れている。 -d<n:n-1行以内にある。 -dの指定が無い時は -d0即ち同一行にあるとなる。 -j :-a/-b パラメータの範囲、或いは -d 指定の&(and)探索で 見つかった 2ワード間の行を連結する。 -je :& 探索で第1文字列があり第2文字列が見つからない時 第1文字列行から最終行までを連結する。 例えば "i StartID & StratID -d>1 -a-1 -j だと最後に非連結行が残るが -j を -je にすれば全て 連結される。 -Llcmd :見つかった行の行番号欄に指定の文字列をセットする。 例えば "f StartLineID -Lcc;f EndLineID -Lcc; rep partialfile" とすると StartLineID と EndLineID の間をpartialfileに複写する。 カーソル移動が省略できるので EXE コマンドファイル内 でのでの使用が考えられる。 -m[n] :反転表示を継続する。 前のFindコマンドの探索文字反転表示をリセットせずに 今回のコマンドの探索文字を追加反転表示する。 次の再探索(PF5)のときも反転表示が継続される。 "n"指定があると次のRFind(PF5)コマンドからそうする。 -同じ語の再探索/反転再探索は機能キー(F5/Shift+F5)を使用. 見つからずにファイルの最後/最初に達した後続いて同じ機能キーを 押せばファイルの最初/最後に戻って再探索します. -オペランド値のみをコマンド行に入力し再探索/反転再探索の 機能キー(F5/Shift+F5)を押せば それぞれ 大文字/小文字区別無の next/prev 探索となる.コマンド動詞(省略形のみ認める)から入力 して機能キーを押した場合は大文字/小文字区別はそのコマンド動詞 に従います -タブとそのタブによるスペースは空白文字と一致すると見なされます -探索文字列の指定のしかたについては,先の"語について"の記述を 参照