タグ

grepに関するpoppenのブックマーク (5)

  • Big Sky :: 日本語grepが出来るjvgrepというのを作った。

    語を扱っていて困るのがgrep。正規表現パターンにマルチバイト文字を混ぜられなかったり、windowsで動かすと"表"の様に2バイト目にbackslashが混じる文字で動作しなくなったりします。 さらに複数のエンコーディングで書かれたファイルが散らばっていると一度のgrepで検索出来なかったりもします。 vimに限っては、内蔵のvimgrepを使う事で解決出来ますが、見つかったファイルをバッファに開いてしまうという挙動がある為、grepオリジナルの動作を求めている人にとっては都合の悪い物だったりもします。 vimgrepの様に複数のエンコーディングに対応していて、検索パターンにマルチバイト文字を含んだ正規表現が使えて、windowsでもちゃんと動いて、ついでといっちゃあなんだが、"**/*.txt"で再帰検索してくれる様なgrep無いかなぁと思ってたんですが、やっぱり無いので作りました

    Big Sky :: 日本語grepが出来るjvgrepというのを作った。
    poppen
    poppen 2011/08/19
  • VimでGrepする覚え書き 2/2 「外部grep」編 - ナレッジエース

    おそらく、誰もがやる深夜のWebサーフィンは、究極のところ時間の無駄ではないのかもしれない。 それは、Webで夢をみているのにほかならないのだ。(T.B=リー「Webの創成」より) 「内部グレップ」編ではVim7.xで利用できる内臓grep機能について紹介しました。 だいぶ時間がたってしまいましたが、第二回の今回は外部のgrepツール(GNU grep)を使った、一歩進んだgrep方法についてまとめてみます。 内臓grep機能は手軽に利用できるメリットがある反面、検索が遅かったりMRUを汚染してしまうというやっかいな点がありました。 外部grepを利用すればこのような問題も解決してより快適にgrepが使えるようになります。 (追記2008-01-16:残念ながらWindows版のGNU grepでは、日語の検索についていくつか問題があるようです。記事末の追記部分を参照のこと。) grep

  • grepやRakで2つ以上のキーワードの共起を検索する方法 - Hello, world! - s21g

    ある単語Xが出てくる場所の前後5行以内に別な単語Yが出現する場所を探したい。 たまにはそんなこともありますね。 -A -B -C オプションが実装されている Rak やgrepを使えば簡単。

  • Rak: カラフルで見やすいRuby版grep - Hello, world! - s21g

    ちょっと使ってみて良い感じだったので紹介します。 Rak Rak is a grep replacement in pure Ruby. It accepts Ruby syntax regular expressions and automatically recurses directories, skipping .svn/, .cvs/, pkg/ and more things you don't care about. It is based on the Perl tool ack by Andy Lester. Pure ruby で書かれた grep みたいな感じですね。 なんといっても見た目が美しい。 デフォルトで再帰的に、.svn や .cvs を無視して検索してくれる というのも良い感じ。 RubyGemsとして提供されているので、インストールするのは

  • Beyond grep: ack v3.7.0

    ack is a grep-like source code search tool. The latest version of ack is v3.7.0, released 2023-02-25. Designed for programmers with large heterogeneous trees of source code, ack is written in portable Perl 5 and takes advantage of the power of Perl's regular expressions. What's new in ack? New --not option The new repeatable --not option lets you get more precise matches. If you want to search for

  • 1