サクラエディタの正規表現で行検索やフォルダ除外の方法とは

このQ&Aのポイント
  • サクラエディタの正規表現を使用して、文頭のスペースやタブを除外して、特定の行('や--の行)を検索する方法を解説します。
  • また、特定のフォルダを除外してGREPをかける方法も紹介します。具体的には、特定のフォルダを除外してGREPをかけたい場合の手順を説明します。
  • さらに、検索したい単語の開始と終了が決まっていて、間に何文字(数字も含む)が入っていても検索する方法についても解説します。具体的な例を交えて説明します。
回答を見る
  • ベストアンサー

サクラエディタ 正規表現

正規表現の書き方をネットで探しましたが、イマイチやりたいことが出来ないので、どなたか実際にかいてもらえませんか。 ・文頭のスペースやタブを除外して、'や--の行を検索する。 ・特定のフォルダを除外してGREPをかける。  例えば、aaa.txtというファイルにあいうえおという文字列が入力されていて、  そのファイルがC:\A、C:\B、C:\Cにあり、C:\Bだけを除外してGREPをかけたい  ※除外するフォルダ名の長さは不特定 ・検索したい単語の開始と終了は決まっていて、間に何文字入ってても(数字もあり)検索する  例えば、単語の開始が あいうえお で、終了が さしすせそ の場合 雑な質問で申し訳ないですが、どなたか回答お願い致します。

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

  • ベストアンサー
回答No.1

>・文頭のスペースやタブを除外して、'や--の行を検索 「'や--の行」という言葉だけでは条件が不明瞭ですが…こうですか? ^\s*('|--).* >・特定のフォルダを除外してGREPをかける。 通常、エディタに内蔵する「ファイルから検索」の機能は、そこまで細かなフォルダ選択は出来ません。サクラエディタも。 他の機能?で出来るのかもしれませんが、何か別の(検索専用の)ソフトを探した方が早いでしょう。 >単語の開始と終了は決まっていて、間に何文字入ってても あいうえお.*?さしすせそ これで要件を満たさない場合は、具体例を提示してみてください。

akito0417
質問者

お礼

>通常、エディタに内蔵する「ファイルから検索」の機能は、そこまで細かなフォルダ選択は出来ません。サクラエディタも。 GREPのメニューでフォルダを指定出来たので、フォルダにも正規表現が使えるのかとおもっておりました。 最悪、ローカルのフォルダなので、不要なのは消すか気にしないで今まで通り全部検索しようとおもいます。 他の二点は問題なくHITさせたい通りの回答です。 ありがとうございました。

関連するQ&A

  • 正規表現

    テキストファイルからコメント行以外から文字列"bbb"を含む 行をgrepで抽出したいと思っております。 コメント行→"#"で始まる行と"--"で始まる行 先頭にスペースがある場合もあるので、結局 先頭に「0個以上のスペース+("#"or"--")」がある行は対象外 として、文字列"bbb"を含む行をgrepで抽出したいと思っています。 下記、foo.txtの中から下記の抽出対象の2行のみを抽出したい場合、 どういった正規表現を書けばいいか教えてください。 【foo.txt】 aaa bbb → 抽出対象 aaa bbb →抽出対象 # aaa # bbb →抽出対象外 #aaa # aaa --aaa --aaa -- aaa -- bbb →抽出対象外 -aaa -bbb - aaa ご存じの方がいらっしゃいましたら、よろしくお願い致します。

  • サクラエディタのGrep機能について

    サクラエディタについての質問です。 テキストファイルAから単語BでGrepした結果テキストファイルCから 更に単語DでGrepする方法をご存知ではありませんでしょうか? 一旦保存せずに、続けてGrepしたいと思ってます。 秀丸では、できるのですが・・・ 宜しくお願いします。

  • 秀丸エディタでgrepを行うと前に余計なファイル名と数字が付け加えられる

    grepを行うと、文字の前にファイル名.txtと数字行(****)が付け加えられます 例えば、 aaa bbb をgrepで実行すると .txt(2659):aaa .txt(2660):bbb のようにファイル名と数字行が入ってしまいます。 前につけないように、grepを実行するにはどうすればよいのでしょうか?

  • 連続で複数の単語をGREPしたい

    Windows7端末でサクラエディタを用いてGrepしていますが、Grepしたい単語数が多いので困っています。イメージとしては以下のようにできれば良いと考えています。 ・検索したい単語のリスト C:\単語リスト.txt ・結果を出力するファイル C:\結果テキスト.txt(結果ファイルは単語ごとに出力しても可能) ・検索対象フォルダ(サブフォルダも検索) C:\SourceCode\ 単語リストから一行ずつ取得して検索対象フォルダから該当のファイル名と該当行を結果テキスト.txtに出力します。結果は一つのファイルにまとめて出す場合は、単語ごとにGrepした結果を分けて出力したいです。 もしくは単語単位に複数の結果テキスト.txtを出力しても構いません。 方法ご存知のかた教えて頂ければ幸いです。

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

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

  • 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-保存する場合のスクリプト内容を教えていただけないでしょうか。 宜しくお願い致します。

  • 正規表現について2

    すみません、前回「正規表現について」でお世話になりました者です。 前回の分は解決したのですが、それに関連してもう少し教えてください。 data.txt---------------------------------------- aaabbbccc aaadddccc aaaeeeccc ------------------------------------------------ test.pl----------------------------------------- #!C:\Perl\bin\perl use CGI; my $q = CGI->new; $q->charset('Shift_JIS'); print $q->header(-type => "text/html"); my $line=0; open(IN,"<data.txt"); open(OUT,">output.txt"); while(<IN>){ if ($line++==0){ $output1="$1" if/aaa(.*?)ccc/;} s/aaa(.*)ccc/$1/ if (?aaa(.*)ccc?); print OUT; } close(OUT); close(IN); print $output1; ------------------------------------------------ とすることで、得られたい結果である、 output.txt-------------------------------------- bbb aaadddccc aaaeeeccc ------------------------------------------------ IEでの表示-------------------------------------- bbb ------------------------------------------------ となりました。そこで今回教えていただきたいのは、 data.txt---------------------------------------- <空行> aaabbbccc aaadddccc aaaeeeccc ------------------------------------------------ というようにdata.txtのはじめが空行の場合にも、 上記と同じような結果を得たいです。output.txtの はじめは空行になっても構いません。得られる文字として、上と同じ結果がほしいです。どうしたらよいでしょうか?よろしくお願いします。

    • ベストアンサー
    • Perl
  • VBSでファイル名と同じフォルダを作成し、移動させる。

    はじめまして。こんにちは。ファイル名の取得、フォルダの作成、移動ができなくて困っています。 たとえばC:\testというフォルダの中にaaa1.txt aaa2.txt,aaa3,txt・・・zzz343.txtというようにファイルがランダムにあったとします。最初の3文字は英語と決まっています。そこでaaa1.txtやaaa2.txtがあればaaaというフォルダを同じ階層に作成し、aaa1.txtとaaa2.txtを新しく作成したaaaというフォルダに移動させる。これをすべてのファイルにたいして行いたいのですがどうすればいいのでしょうか? 参考になるURLやサンプルプログラムがありましたら教えて下さい。よろしくお願い致します。

  • バッチファイルの正規表現を利用した文字列検索

    お世話になっております。 表題の件について、質問させてください。 『とあるファイルに記述されている文字列を一部抜き出して、 別ファイルとして保存する』というバッチファイルを作成していますが、 うまく抜き出すことができないため、ご教示いただければ幸いです。 例) ・filelist.txt .\aaa\aaa.txt .\aaa\bbb.txt 上記ファイルに対し、「.\aaa\aaa.txt」の一行のみ取り出した 「aaafile.txt」というファイルを生成したいと考えております。 現在、私が考えたコマンドは下記になります。 for /f %%A in ('findstr /r /c:"aaa[^\\].*" filelist.txt') do echo %%A > aaafile.txt このコマンドを実行すると、「.\aaa\bbb.txt」まで抽出してしまい、 意図通りとなりません。 初歩的なミスかもしれませんが、 何卒、よろしくお願いいたします。

  • 正規表現について

    たくさんあるhtmlファイル内に特定の条件に該当するファイルを探したい場合の正規表現で、 <title>から</title>の間に「.jpg」や「%」といった特定の文字列を含んだ行を検索したいのですが、どのように書いたら良いでしょうか? お手数ですが、よろしくお願い致します。

専門家に質問してみよう