• ベストアンサー

一般的なエディタで1行目を対象としたGREP

一般的なエディタで1行目の文字列検索(GREP)はできるものでしょうか。 (例) テキストファイルの一番上に 「Option Explicit」という文字があれば、リストを表示する。 #ちなみに私はVIVIを使っています。(素人レベル)

質問者が選んだベストアンサー

  • ベストアンサー
  • taka_tetsu
  • ベストアンサー率65% (1020/1553)
回答No.1

最初のgrepの結果から、さらに行番号が書かれている個所をgrepする。

s-holmes
質問者

お礼

回答ありがとうございました。 役立ちました。(^O^)

関連するQ&A

  • テキストエディタ grepの機能について質問です。

    テキストエディタ grepの機能について質問です。 自分のHPのHTMLを修正するのにサクラエディタやTeraPadを使っていますが、任意の文字列を含む行を 一気に修正したいとき、grep機能を使うことになると思います。 ただこの場合、例えば「サクラエディタ」の場合だと検索結果が別ウィンドウに表示され、 そこで修正しても元のソースには反映されません。そのまま保存すれば検索結果行だけのデータになってしまいます。 検索結果を修正(時には行ごと削除)したものが、元のソースにそのまま反させることはできないのでしょうか。 テキストエディタ自体使い始めて間もないので、私が機能を見落としていたら申し訳ありません。

    • ベストアンサー
    • HTML
  • 正規表現で「除く」

    windows用のエディタの「VIVI」というのを使っています。 grepで「2002/09/01」という文字列を含まないテキストを検索したいのですが、正規表現での検索の方法を教えていただけないでしょうか。 #どのエディタも同じではないかもしれませんが。 #自分は、正規表現のことは素人です。単に上記条件の日付のみを変更して使いたいだけ・・ (^^;

  • VIVI(エディタ)のスクリプトについて

    OS:WindowsVista Ultimate SP1 viviバージョン:2.0375 Excelバージョン:2003 SP3 仕事でviviエディタを使用しているものです。 宜しくお願いします(viviは全くの初心者です・・・) あるフォルダ内のファイル群からgrepを使用して出た結果をCSVで保存します。 その一連作業を検索文字列だけ変えて数十回ほど繰り返し作業しています。 そこでgrepで使用する検索文字列をExcelVBAで収集し文字列操作で viviのスクリプトを作成してはき出されたスクリプトファイルで一気にgrepを 行うと同時に保存できないかと考えております。 そこで以下の条件を満たしたスクリプトを記述する場合どのように記述するか教えて下さい。  (1)検索文字列、ファイル種別(*.*)、ディレクトリを指定した状態でのgrep   (他はデフォルトです。)  (2)grep終了後、検索文字列で保存(csv形式) ExcelVBAの部分は大体出来たのですがスクリプトが全くわかりません。 サイトで色々調べたのですが、見つからず(分からないだけかも)困っている状態です。 すいませんがgrep-保存する場合のスクリプト内容を教えていただけないでしょうか。 宜しくお願い致します。

  • grepで検索行以外の行を抽出する方法

    grepをかけると検索文字列を含む行を抽出しますが 検索文字列を含む行とその前後の行も出力したりできるのでしょうか? よろしくお願いします。

  • コメント行を検索対象から除外する方法

    C/C++のソースコードを普通にテキスト検索やGREPを実行すると、当然コメントも検索結果に表示されます。コメント部分が検索結果に表示されないようにする手段やツールはあるでしょうか?つまり、"//"以降改行文字までと"/* */"に囲まれたコードを検索対象から除外するということです。#if 0 ~ #endifも適切に解釈して除外してくれるとより助かります。 Visual Studioのテキストエディタで実現出来れば一番都合が良いのですが、それらしいオプションが見当たりません。 秀丸エディタのGREPのオプションに「追加の条件」の設定があり、ここでコメントを除く指定をすればコメント行が検索対象から除外されます。ただ、この方法だと通常の検索の何倍もの時間がかかってしまい非現実的です。恐らく全ての文字をコメント文字かどうか判定しているのでしょう。 検索対象のソースは2万ファイルに上り、100万行を超えています。10文字の検索文字列で、普通に全ソースGREPすると25秒程度、コメントを除くオプション指定だと315秒(5分以上)かかりました。もちろん検索文字の長さやその他オプションにも依存するでしょうが、さすがに普段使いとしては現実的ではない所要時間です。 除外したいコメント行はたいてい行頭にコメント文字"//"がありますので、行頭の"//"のチェックに限定したいです。ただ空白スキップくらいはあると良いです。これにより現実的な検索時間に収まるかどうかはやってみないと分かりませんが・・ なお、検索結果からコメント行を削除する秀丸のマクロはありました。ただ、この方法ではコメント行も検索対象となるため、余分な検索時間がかかっていますし、何しろ二度手間です。普段のソース検索でコメント行も含む検索はあまり行わないと思います。 なぜこれが問題になるかと言いますと、ソースに修正前のコードをコメントとして残してあるため、コメント行が膨大になっているのです。Javaの標準ライブラリほどではありませんが、ざっと調べたところソースの40%はコメント行です。 同一箇所の複数の変更履歴が全部コメントとして残っているため、実質1か所のヒットでも検索結果に2つも3つも重複して表示されてしまいます。もちろん、このように修正履歴をコメントとして残すこと自体が問題なのは分かっていますが、自前のソースではないので手を出せないのです。

  • FreeBSDでWindowsの秀丸エディタみたいなgrepする方法?

    FreeBSDでWindowsの秀丸エディタみたいなgrepする方法があったら教えて下さい。 たとえば、秀丸ではこんな風にgrepしてます。 検索する文字列:hoge 検索するファイル:*.c *.h 「大文字/小文字の区別」にチェック 「単語の検索」にチェック 「サブフォルダも検索」にチェック どなたか分かる方、よろしくお願いします。

  • 秀丸での完全一致Grep

    テキストエディタの秀丸について質問させてください。 たとえば ・001 hidemaru 秀丸完全一致検索 ・002 hidemaru 秀丸完全一致 ・003 hidemaru 秀完全一致 テキストエディタに上のような記述があり、「秀丸完全一致」にて Grepを行うと、001行目と、002行目が検索結果として返されますが、 このとき、002行目だけを検索結果として返すことは出来ませんでしょうか。 お力添えを宜しくお願いいたします。

  • grepで検索文字列が完全一致した行だけ取り出す方法

    grepの文字列検索で検索文字列が単語として、完全一致した行だけ取り出す方法はないでしょうか? 通常は grep hoge hoge.txt と打つと、hogeが含まれる行が出力されますが、今回は含まれる行ではなくて完全に文字列が一致した行だけ取り出したいのです。 例えばhoge.txtの中に cc ghoge kkl hogem jjll hoge という3行があったとしたら最後の行でhogeという文字が空白で区切られた行だけ取り出したいのです。 何かよい方法があれば教えてください

  • エディターを紹介してください

    SE&プログラマーです。テキストエディターの使いやすくて簡単なものをご紹介ください。友人には「EMEDITOR」を紹介してもらいましたが、使うのが難しそうです。今は「cygwinでvi」を使っています。 必要な点はテキストのプログラムの修正です。以前UNIXをやっていましたので、そのため今はPCにcygwinを入れて、UNIXコマンドを使っています。「sed.grep.find」特にgrepはよく使います。grep(「多くのテキストファイル内の、ある指定文言と合致する行を表示させるコマンド)「grep "修正箇所" * -g」(*はすべてのファイルの意)多くのテキストファイル内の「修正箇所」という文言を含む行を表示、またリスト化もできます。「sed」は多くのファイル内の指定文字列を一括で置換してくれます。「find」はDIR内を下にもぐりながらファイル名検索をおこなえます。などの機能があります。 通常エディターは1ファイルを指定して、その中の文言修正をおこないますが、私は上述のように(例)いろいろなdirに散らばったファイル(プログラム)をある文言で探し出し、その箇所を画面の中央部に表示し、その上下関係を見ながら文言修正し、書き込む、そして次のファイルを修正するといった使い方がメインです。このようなのに理想的なエディターを探しています。よろしくお願いします。 (cygwin+viでも多くのことがかなえられますが、パソコンをフォーマットしなおすことが多く、毎回cygwin+viを正確にインストール(環境を整える)のが面倒なのです)

  • grepで全角文字の行を抽出

    grepの検索でテキスト内のひとつでも全角文字がある行を 抽出したいと思ってます。1つの方法は見つかったのですが、 時たまバグがあるそうですので、 他の方法を探そうと思ってます。 わかっている方法は、以下のとおりです。 > grep -n '.*[^ -~。-゜].*' test_data.txt よろしくお願いします。

専門家に質問してみよう