1 名前:名無しさん@お腹いっぱい。 mailto:sage [04/06/17 09:57 ID:PLaPZ/Pl] テキストファイルを扱う人には必須のGrepツールを語りましょう。
331 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/04/21(月) 17:47:02 ID:FCOzyomh0] 「俺達の検索はこれからだ!」 >>326 先生の次回作にご期待ください。
332 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/04/21(月) 17:54:26 ID:Je0+zwoU0] まぁでも > 正規表現って、検索式を考えているうちに > 慣れている方法でやったほうが速いってとこないか? これはあるよ
333 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/04/23(水) 08:07:43 ID:l22vamBk0] Rubyでワンライナーが以外に便利だとわかった Rubyでワンライナーを書く方法のまとめ blog.lilyx.net/2007/11/29/writing-one-liner-in-ruby/ Ruby -e -pをaliasにするとか、batにしとくとかしとくとよさそう
334 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/04/23(水) 09:44:56 ID:vmcJmpcr0] Devas もコマンドラインで処理できるので grep や置換そのものは Ruby でやる必要ないだろうけど grep: ruby -Ks -n -e"print $_ if /PATTERN/ =~ $_" FILE ... ruby -Ks -e"ARGF.grep(/PATTERN/) {|line| print line }" FILE ... ruby -Ks -e"puts ARGF.grep(/PATTERN/)" FILE ... 置換: (確認)ruby -Ks -p -e"$_.gsub!(/PATTERN/, 'REPLACE')" FILE ... (実行)ruby -Ks -i.bak -p -e"$_.gsub!(/PATTERN/, 'REPLACE')" FILE ... >>331 のジャンプなセリフが気に入った
335 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/05/01(木) 15:05:18 ID:QV/ziJc40] ファイルA 一行に品名、日付、価格、数量(タブ区切り) 数十万行 ファイルB 一行に品名、価格(タブ区切り) 数千〜数万行 ファイルAの中からファイルBにマッチする(品名、価格、共に)行もしくはマッチしない行を 抽出するのに向いてるgrepはないですかね? mfind ttp://homepage2.nifty.com/magicant/sapps/mfind/ を使えばファイルBを正規表現化してgrep -f みたいなオプションで食わせれば出来るんですが も少し速度的に良いものが無いかなあと思いまして。
336 名前:名無しさん@お腹いっぱい。 [2008/05/01(木) 15:14:26 ID:FzAtGAVl0] C言語つかう
337 名前:名無しさん@お腹いっぱい。 [2008/05/01(木) 15:19:14 ID:FzAtGAVl0] 品名と価格が一致するやつを出力するC言語作ってやるぜ
338 名前:337 [2008/05/01(木) 16:37:45 ID:FzAtGAVl0] #include <string> #include <iostream> #include <vector> #include <fstream> using namespace std; class hash{ public: unsigned char x; int n; hash(){x=0;n=0;}}; unsigned int Crc32( unsigned char * , unsigned int); int main(int argc, char *argv[]){ if(argc!=3)return 0;string str; fstream fp(argv[1] , ios::in ); if(fp==NULL)return 0; fstream fq(argv[2] , ios::in ); if(fq==NULL)return 0; unsigned char f[1000],t[10],w; int x,n,num=1;unsigned int z; vector< hash > hs(16*1024*1024+1024); while(!fp.eof()){ getline(fp,str); sscanf(&str[0],"%s %s %d",f,t,&x); if(x<0 || x>10000000) {cout <<"err "<<f<<endl; continue; } n=strlen(f);memcpy(&f[n],&x,4);z=Crc32(&f[0],n+4); w=z&255; z>>=8; for(n=0;n<1024;n++)if(hs[z+n].x==w)break; else if(hs[z+n].x==0 && hs[z+n].n==0){hs[z+n].x=w; hs[z+n].n=num; break;} num++;}fp.close(); while(!fq.eof()){ getline(fq,str); sscanf(&str[0],"%s %d",f,&x); if(x<0 || x>10000000) continue; int k=strlen(f);memcpy(&f[k],&x,4);z=Crc32(&f[0],k+4);w=z&255; z>>=8; for(n=0;n<1024;n++) if(hs[z+n].x==w) {f[k]=0; cout<<hs[z+n].n<<"番目に登録されているデータと一致 商品名 "<<f<<" 価格 "<<x<<endl;} }fq.close();}
339 名前:337 [2008/05/01(木) 16:39:26 ID:FzAtGAVl0] static const unsigned int crcT[256] = { 0x00000000,0x77073096,0xEE0E612C,0x990951BA,0x076DC419,0x706AF48F,0xE963A535, 0x9E6495A3,0x0EDB8832,0x79DCB8A4,0xE0D5E91E,0x97D2D988,0x09B64C2B,0x7EB17CBD, 0xE7B82D07,0x90BF1D91,0x1DB71064,0x6AB020F2,0xF3B97148,0x84BE41DE,0x1ADAD47D, 0x6DDDE4EB,0xF4D4B551,0x83D385C7,0x136C9856,0x646BA8C0,0xFD62F97A,0x8A65C9EC, 0x14015C4F,0x63066CD9,0xFA0F3D63,0x8D080DF5,0x3B6E20C8,0x4C69105E,0xD56041E4, 0xA2677172,0x3C03E4D1,0x4B04D447,0xD20D85FD,0xA50AB56B,0x35B5A8FA,0x42B2986C, 0xDBBBC9D6,0xACBCF940,0x32D86CE3,0x45DF5C75,0xDCD60DCF,0xABD13D59,0x26D930AC, 0x51DE003A,0xC8D75180,0xBFD06116,0x21B4F4B5,0x56B3C423,0xCFBA9599,0xB8BDA50F, 0x2802B89E,0x5F058808,0xC60CD9B2,0xB10BE924,0x2F6F7C87,0x58684C11,0xC1611DAB, 0xB6662D3D,0x76DC4190,0x01DB7106,0x98D220BC,0xEFD5102A,0x71B18589,0x06B6B51F, 0x9FBFE4A5,0xE8B8D433,0x7807C9A2,0x0F00F934,0x9609A88E,0xE10E9818,0x7F6A0DBB, 0x086D3D2D,0x91646C97,0xE6635C01,0x6B6B51F4,0x1C6C6162,0x856530D8,0xF262004E, 0x6C0695ED,0x1B01A57B,0x8208F4C1,0xF50FC457,0x65B0D9C6,0x12B7E950,0x8BBEB8EA, 0xFCB9887C,0x62DD1DDF,0x15DA2D49,0x8CD37CF3,0xFBD44C65,0x4DB26158,0x3AB551CE, 0xA3BC0074,0xD4BB30E2,0x4ADFA541,0x3DD895D7,0xA4D1C46D,0xD3D6F4FB,0x4369E96A, 0x346ED9FC,0xAD678846,0xDA60B8D0,0x44042D73,0x33031DE5,0xAA0A4C5F,0xDD0D7CC9, 0x5005713C,0x270241AA,0xBE0B1010,0xC90C2086,0x5768B525,0x206F85B3,0xB966D409, 0xCE61E49F,0x5EDEF90E,0x29D9C998,0xB0D09822,0xC7D7A8B4,0x59B33D17,0x2EB40D81, 0xB7BD5C3B,0xC0BA6CAD,0xEDB88320,0x9ABFB3B6,0x03B6E20C,0x74B1D29A,0xEAD54739, 0x9DD277AF,0x04DB2615,0x73DC1683,0xE3630B12,0x94643B84,0x0D6D6A3E,0x7A6A5AA8, 0xE40ECF0B,0x9309FF9D,0x0A00AE27,0x7D079EB1,0xF00F9344,0x8708A3D2,0x1E01F268, 0x6906C2FE,0xF762575D,0x806567CB,0x196C3671,0x6E6B06E7,0xFED41B76,0x89D32BE0,
340 名前:337 mailto:sage [2008/05/01(木) 16:39:50 ID:FzAtGAVl0] 0x10DA7A5A,0x67DD4ACC,0xF9B9DF6F,0x8EBEEFF9,0x17B7BE43,0x60B08ED5,0xD6D6A3E8, 0xA1D1937E,0x38D8C2C4,0x4FDFF252,0xD1BB67F1,0xA6BC5767,0x3FB506DD,0x48B2364B, 0xD80D2BDA,0xAF0A1B4C,0x36034AF6,0x41047A60,0xDF60EFC3,0xA867DF55,0x316E8EEF, 0x4669BE79,0xCB61B38C,0xBC66831A,0x256FD2A0,0x5268E236,0xCC0C7795,0xBB0B4703, 0x220216B9,0x5505262F,0xC5BA3BBE,0xB2BD0B28,0x2BB45A92,0x5CB36A04,0xC2D7FFA7, 0xB5D0CF31,0x2CD99E8B,0x5BDEAE1D,0x9B64C2B0,0xEC63F226,0x756AA39C,0x026D930A, 0x9C0906A9,0xEB0E363F,0x72076785,0x05005713,0x95BF4A82,0xE2B87A14,0x7BB12BAE, 0x0CB61B38,0x92D28E9B,0xE5D5BE0D,0x7CDCEFB7,0x0BDBDF21,0x86D3D2D4,0xF1D4E242, 0x68DDB3F8,0x1FDA836E,0x81BE16CD,0xF6B9265B,0x6FB077E1,0x18B74777,0x88085AE6, 0xFF0F6A70,0x66063BCA,0x11010B5C,0x8F659EFF,0xF862AE69,0x616BFFD3,0x166CCF45, 0xA00AE278,0xD70DD2EE,0x4E048354,0x3903B3C2,0xA7672661,0xD06016F7,0x4969474D, 0x3E6E77DB,0xAED16A4A,0xD9D65ADC,0x40DF0B66,0x37D83BF0,0xA9BCAE53,0xDEBB9EC5, 0x47B2CF7F,0x30B5FFE9,0xBDBDF21C,0xCABAC28A,0x53B39330,0x24B4A3A6,0xBAD03605, 0xCDD70693,0x54DE5729,0x23D967BF,0xB3667A2E,0xC4614AB8,0x5D681B02,0x2A6F2B94, 0xB40BBE37,0xC30C8EA1,0x5A05DF1B,0x2D02EF8D }; unsigned int Crc32( unsigned char *buf, unsigned int bufLen ){ unsigned int crc32=0xFFFFFFFF; for (unsigned int i=0; i < bufLen; i++) crc32 = (crc32 >> 8) ^ crcT[ (crc32 ^ buf[i]) & 0xFF ]; return( crc32 ^ 0xFFFFFFFF );}
341 名前:337 mailto:sage [2008/05/01(木) 16:44:38 ID:FzAtGAVl0] コンパイル済みexeはこちら 厳密に完全一致を調べているのではないが、 それは簡単なので自分でソースを変更してみて下さい gamdev.org/up/img/11369.zip
342 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/05/01(木) 22:21:07 ID:/6hzVxqK0] ベーシックマガジンかと思った
343 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/05/02(金) 00:14:49 ID:3GewBeeE0] >>335 同じ品物に複数の価格が割り当てられるケースだと、ファイルBを ^品物A[TAB].*?[TAB](価格A1|価格A2|...)[TAB] ^品物B[TAB].*?[TAB](価格B1|価格B2|...)[TAB] みたいにすれば、行頭を繰り返し照合しなくてすむから速くなる。 とりあえずRubyで書いてみた。 ########## patterns = Hash.new {|hash, key| hash[key] = [] } row = nil ARGF.each do |line| row = line.split(/\t/) patterns[row.at(0)] << row.at(1).chomp end patterns.each {|name, values| puts "^#{name}\t.*?\t(#{values.uniq.join('|')})\t" } ########## >ファイルA 一行に品名、日付、価格、数量(タブ区切り) 数十万行 >ファイルB 一行に品名、価格(タブ区切り) 数千〜数万行 両方ともなかなかでかいけれど、grep にどれくらいかかるものなんだろうか
344 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/05/02(金) 09:34:18 ID:VmUaHqll0] SQLiteに放り込んでからselectで吸い出すのは反則か
345 名前:名無しさん@お腹いっぱい。 [2008/05/02(金) 10:36:09 ID:2+Xim1/50] マンドクセ
346 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/05/02(金) 12:50:39 ID:CsFJNg0f0] 数千〜数万件をselectで吸い出すのは実用的?
347 名前:名無しさん@お腹いっぱい。 [2008/05/02(金) 14:09:23 ID:2+Xim1/50] データによる
348 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/05/02(金) 23:01:38 ID:QMt2mgO70] Repl-Aceのニューバージョンが
349 名前:名無しさん@お腹いっぱい。 [2008/05/05(月) 18:04:03 ID:SC/kHrba0] 一度に何十ものキーワードを指定してGREPしたいことがあるけど、それができる ソフトってないかな。
350 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/05/05(月) 18:33:00 ID:axswZt8w0] >>349 grep -f speeeeed
351 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/05/08(木) 19:02:23 ID:PPWfCznk0] 窓の杜 - 【NEWS】複数ファイルの文字列置換「Repl-Ace」の後継「Repl-Ace on .NET」v1.0が公開 www.forest.impress.co.jp/article/2008/05/08/replaceondotnet.html
352 名前:名無しさん@お腹いっぱい。 [2008/05/14(水) 15:15:14 ID:KzYWfa790] 新着ソフトレビュー - esploristo 約150種類の文字コードを自動判別する、正規表現対応の文字列検索・置換ソフト www.vector.co.jp/magazine/softnews/080513/n0805133.html?ref=rss
353 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/05/14(水) 20:21:12 ID:2FJwLA2s0] >>352 使ってみたが自動バックアップがないのと 検索対象のうちの一部だけを置換というのができないのが気になった。 つまり、Devas を見習ってくれ。検索は Devas より速いね
354 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/05/14(水) 21:14:36 ID:TdqYvc500] 正規表現使いこなせてねええw
355 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/05/14(水) 21:30:18 ID:2FJwLA2s0] いや、正規表現で無理なのもあるだろw 全く同じ文章とかな。
356 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/05/15(木) 08:26:35 ID:pFSH9ULK0] いや、不可能を可能にするのが正規表現だろw
357 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/05/15(木) 12:47:56 ID:eEcqcSkc0] 正規表現の中に食品を置いておくと腐らないそうだ
358 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/05/15(木) 16:12:41 ID:lZHfvTBk0] 正規表現ってなんかエロい。
359 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/05/15(木) 16:40:07 ID:Mrn8hmIy0] 性器表現?(.*)辺りか?
360 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/05/16(金) 00:35:24 ID:u3CmuSie0] >>358 それは、オライリーの詳説・正規表現でかまされていた冗談だな。
361 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/05/20(火) 16:03:30 ID:uoQ1W2KA0] >>352 ゴミだな。 特定のケースのテキストファイルでは存在するはずの単語で検索してもヒットしない。 報告しようにもメールアドレスだけで掲示板とかないし。
362 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/05/21(水) 01:03:05 ID:AOOyCo9v0] 何だ、こりゃ。勝手に文字コードを書き換えやがった。 置換対象じゃないテキストにも関わらずだ。ベータか?
363 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/05/21(水) 23:22:53 ID:b5B8nuad0] >>361 文字コード誤認識でもしたのかな? いずれにせよ特定のケースの具体例がないことにはなんとも
364 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/05/21(水) 23:33:18 ID:AOOyCo9v0] 作者か?まぁうpしてもいいが不毛な気がする。 文字コードの判定精度 100% なんて無理なんだよ。 判定精度を上げる努力よりも文字コードを指定できるオプションを用意たほうがいいだろうな。
365 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/05/22(木) 00:20:52 ID:vppkdtUy0] ヨシダ様 REF_YOSHIDA_RRRRR_RE REF_YOSHIDA_RRRRR_RE REF_YOSHIDA_RRRRR_RE REF_YOSHIDA_RRRRR_RE REF_YOSHIDA_RRRRR_RE REF_YOSHIDA_RRRRR_RE REF_YOSHIDA_RRRRR_RE REF_YOSHIDA_RRRRR_RE ヨシダ
366 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/05/22(木) 00:23:26 ID:vppkdtUy0] >>365 を UTF-8 (BOM) で保存。ヨシダで検索してもヒットしない。 あと MOJICOCO のアイコン間違ってない? 16×16 の方。
367 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/05/22(木) 00:27:20 ID:vppkdtUy0] 様を消したりちょっといじったりするとヒットするようになる。
368 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/05/26(月) 09:55:35 ID:L9R4+Qgt0] コピペしたリポート、ばれちゃうぞ…金沢工業大学教授、ネット検出ソフト開発 mamono.2ch.net/test/read.cgi/newsplus/1211735721/ 電子データで提出された文章をソフトに入力すると、翻訳ソフトに使われている「形態素解析」 という技術で、文章を文節や単語に分解。それぞれの文節や単語をネット検索し、類似した文章が ネット上で見つかれば、URLを表示して知らせる。複数のリポートを比べて、学生同士が写し合って いないかチェックすることもできる。 これも検索ソフト。
369 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/05/26(月) 13:12:04 ID:15dwUZaR0] 金工大にしてはやるな
370 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/05/27(火) 19:05:13 ID:wtMoLAGl0] >>369 目新しい技術は何もない、「重箱の隅」ソフトとしか。 しかし大学教員には進歩の止まった人が多いから、 こういう「専用」ソフトじゃないと使えない人もいるだろう。 学生のほうが柔軟だから、検出されないように同義語で置換したり、 まったくグループの違う文章と混合したり、工夫しそうだね。 逆に真面目に書いた学生のレポートが、アウトになりそう。
371 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/05/27(火) 19:21:54 ID:oHBgR34P0] MITでwikipediaと照合させる似たようなシステムを去年やってたから、 そこからヒントを得たんだろう。
372 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/05(木) 12:16:58 ID:J0sMssUw0] >>370 教授みんながみんなプログラマーでスクリプトかけたりするわけなわけねえだろw 目視でやるのはばからしい話だし、一つのソフトで自動化できればよいことだ
373 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/07(土) 02:24:19 ID:rjBWDbnB0] >>368 「自然言語処理の分野って案外せまくて隣の研究内容がだいたいわかるけど、 金工大の研究なんて聞いたことねー。 その程度なのにこんなん出しちゃって、後々たたかれるんじゃないの?」 ってうちの大学の准教授が言ってた
374 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/07(土) 12:45:32 ID:K8WaFf6n0] じゃあなんで今までそういうソフトが 「一般に発表」 されてこなかった? ニーズをきちんと形にする、最初にマスコミに発表してしまう、というのも実力の一つ
375 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/07(土) 13:52:48 ID:rjBWDbnB0] >>374 うん、だから、やり方はうまいとも言ってた たたかれるってのも学会とかの中での話だろうし あくまで研究者間と利用者間の間の認識の隔たりだと思われ
376 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/07(土) 14:30:08 ID:xSbPnWPS0] 無駄にけなしたり > 「重箱の隅」ソフト > 後々たたかれる とか話が見えてこないんだが大学間でソフト開発の競争でもしてるのか?
377 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/07(土) 14:36:50 ID:rjBWDbnB0] ソフトの件はべつにどうでもいいとかなんとか 問題なのは特許だそうだ
378 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/07/05(土) 09:34:25 ID:9P3Q7aHw0] Devas 、ダイアクリティカルマーク付き文字の置換に対応してくれ。
379 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/07/31(木) 11:33:58 ID:L0lgJPxw0] devas で特定の文字列以外を検索したいのですがどのようにすればよいのでしょうか? 例えば foobar という文字列があった場合に ob という文字列以外を検索したいのです。 色々試したのですがうまくいきません。どなたか教えてください。
380 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/08/01(金) 15:32:22 ID:YRvjgmUV0] いつの間にかYokkaGrepがダウンロード出来なくなってる おいおい、どうすりゃいいんだ 助けてーーーーーー 仰々しい機能はいらないから シンプルで気の効いた置換ソフトって他にないのか
381 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/08/01(金) 15:40:49 ID:URL40/SQ0] >>379 否定の正規表現はできることはできるけど、文字数が増えるごとに馬鹿みたいに長く複雑になる。 遊びでやろうというならわからんでもないけど、現実的には何か別の方法考えた方がいい。 俺の頭だと2、3文字位はなんとかなるけどそれ以降は頭の中がスパゲッティになってどうにもならんw
382 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/08/02(土) 17:10:42 ID:xQi6aM4G0] バイナリファイルっぽいファイルは勝手に除外してくれ, っておもうんですが,そういうオプションはないんでしょうか?
383 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/08/03(日) 10:12:03 ID:+btt8hi60] どいつもこいつも正規表現のAPIに頼ってばかりで AND検索すらできない糞仕様 普通さ一番よく使われているgoogleの検索機能を真似ようとするよね? こいつらほんとバカだね プログラミングで使用するには非力だし、一般人には使いづらいし 誰をターゲットにしているのかと
384 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/08/03(日) 10:13:18 ID:+btt8hi60] 探してもねーし、googleライクな検索ソフト自分で作るわ
385 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/08/03(日) 10:49:20 ID:+btt8hi60] ミニ検索隊ってjgrepより検索はええな
386 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/08/03(日) 11:34:05 ID:WDbcA4jH0] >>383 どいつもこいつもってどのソフトのことなのさ
387 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/08/03(日) 13:28:34 ID:xdAvYwrp0] >>383 > 誰をターゲットにしているのかと 少なくともあなたじゃない
388 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/08/03(日) 14:42:44 ID:Xo8n29eu0] まぁ正規表現使えるヤツが対象ってのは間違いないな。 grepだし。
389 名前:名無しさん@お腹いっぱい。 [2008/08/03(日) 16:04:12 ID:iUUIygBQ0] >>383 の名言集 37 名前:22[sage] 投稿日:2008/08/03(日) 10:46:04 ID:+btt8hi60 >>32 めんどくせーただそれだけ >>36 当たり前のことをえらそうにいうなよwカス >>34 ヘタレだから作れないだけだろ 41 名前:22[sage] 投稿日:2008/08/03(日) 10:56:26 ID:+btt8hi60 >>38 お前プログラミングできんのか? どうせVBぐらいしかつかえねーんだろw 42 名前:22[sage] 投稿日:2008/08/03(日) 10:57:36 ID:+btt8hi60 >>38 それからその正規表現は適切じゃないから バカは黙ってろ 45 名前:22[sage] 投稿日:2008/08/03(日) 11:05:57 ID:+btt8hi60 はい、おまえのまけ
390 名前:名無しさん@お腹いっぱい。 [2008/08/03(日) 16:04:45 ID:iUUIygBQ0] おっと22を貼り忘れた 22 名前:名無しさん@お腹いっぱい。[sage] 投稿日:2008/08/03(日) 04:29:16 ID:+btt8hi60 サブフォルダ内になるdat,ini,txtやhtmlなどの中から特定の文字列を検索するものを探しています 検索条件で複数の文字列指定ができるもの(これがなかなかない・・) たとえば検索条件に「アイ ペン」とすると「アイアムアペン」がヒットするような感じのもの 絞込みもできればほしい
391 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/08/03(日) 19:32:51 ID:BUOwxfT+0] このスレをANDで抽出すればいいだけなんだけどな
392 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/08/03(日) 20:04:45 ID:+btt8hi60] GrepJuiceか?糞ソフトごときでレジストリ使うなんてゴミが増えるだけでしょw フリーでレジストリ使う奴はおれは使わない主義
393 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/08/03(日) 22:20:01 ID:0By2Sdh/0] 未だにいるのか
394 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/08/04(月) 02:15:02 ID:pkKaeW1W0] あほくさ。
395 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/08/08(金) 16:03:11 ID:rhQeaqy90] >>383 こいつ、自分が正規表現つかえないだけの、ゆとりなんじゃねw
396 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/08/09(土) 11:37:24 ID:9P8xvm0U0] 正規表現でもAND検索と同じようなことできるだろ。
397 名前:名無しさん@お腹いっぱい。 [2008/08/10(日) 06:49:06 ID:wiF5en/+0] getiaが「不正なイメージリスト」とかダイアログでてVistaでぐおかなあぁい件について --------------------------- getia --------------------------- 不正なイメージ リスト. --------------------------- OK ---------------------------
398 名前:389 [2008/08/10(日) 06:51:31 ID:wiF5en/+0] >>395-396 でも、完全な代用にはならんでしょ。 行単位無視の設定が可能で、Hoge.*Mage.*Hoge みたいに書くのも面倒だしね。 まあ素直にデスクトップ検索使え、という話だがw
399 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/08/14(木) 09:00:10 ID:myLTr6J50] 抽出してみて回答者気取りのアホの糞っぷりにワロタ こういう、回答しないのに初心者叩くだけが生きがいのゴミって昔はよくフォーラムにいたよなあ。
400 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/08/14(木) 10:18:33 ID:v6Mg9Td00] 今でも多いよ。
401 名前:名無しさん@お腹いっぱい。 [2008/08/18(月) 15:16:54 ID:wCPkmEyk0] シングルクォーテーションの入っている単語を検索したい時、どうすればよいでしょうか?? grep -r 'array['name']' * みたいにするとき、二個目のシングルクォーテーションが検索後の終端と見なされてしまうためか、エラーが出てしまいます。
402 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/08/19(火) 08:17:18 ID:fFMhUPCl0] Perlの正規表現しか知らないけど、 grepでも\前につけて \' でエスケープできないんだっけ?
403 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/08/19(火) 10:04:52 ID:YDFnPKR50] >>401 grep -r array\['name'\] *
404 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/08/27(水) 16:50:04 ID:Z1WAGe4d0] >>399 まんまお前、そのものじゃんwww
405 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/09/07(日) 23:17:19 ID:b8hB7nVd0] >>404 おまえ頭悪いな。煽りなのか知らないが
406 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/09/17(水) 14:47:37 ID:JqSYINZ20] aとbの文字列が含まれる行を検索する場合正規表現でわざわざやるのは面倒だな 例えば abcdefg gfedcba 上の両方を検索したい なんで検索ソフトは正規表現しか使えないの? 普通正規表現使わなきゃいけないなんてことはほとんどないんだけどね デスクトップ検索なら「a b」とするだけで簡単に検索できるのにな でも、デスクトップ検索だと、特殊なファイル形式には対応してないしな
407 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/09/17(水) 14:50:38 ID:JqSYINZ20] >>406 aとbじゃなくてaとdな。 検索ソフト作っている奴って独自の検索アルゴリズムも作れないカスばっかりなのかね
408 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/09/17(水) 20:35:57 ID:HfqSl7cT0] >>407 ニーズが無いからな 欲しければ要望だしてみればいいじゃん
409 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/09/17(水) 21:24:43 ID:2Eeqaa6C0] ID:JqSYINZ20は自分で作れ
410 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/09/18(木) 01:50:28 ID:JxIuWDhi0] ファイル名にキーワードをつけている場合(「スカトロ、緊縛、巨乳」など) 正規表現で目的のファイル探すのが面倒だ
411 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/09/18(木) 01:54:05 ID:JxIuWDhi0] スカトロ、緊縛、巨乳 この3つのキーワード(順序まちまち)を含んだファイル名をテキストから探すとき 正規表現だと9通りのANDを書き込まなければならない
412 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/09/18(木) 02:00:02 ID:JxIuWDhi0] みやぐれっぷはスペース区切りじゃなくて&&を区切り文字列にしているから面倒 googleみたいにスペースが意図的に必要な場合は"で囲むようにするとかしろよな 普通に考えてシステムの仕様はメジャーな検索システムに迎合するのが基本理念だろカス あと、devas。これはほんと糞だな リストビューにアイテムを追加する度に再描画してるんじゃねーよ だから、他の検索ソフトより描画するまで3倍も時間がかかるんだよカス アイテム追加している間は自動再描画を無効にしておけよ
413 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/09/18(木) 02:38:38 ID:5ZK06gpV0] >>412 キミ、devas の最新版使ってないでしょ?
414 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/09/18(木) 02:42:32 ID:1HCW+sio0] うそん?
415 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/09/20(土) 10:45:03 ID:gsMu6jOQ0] Devas,JGREP2,みやぐれっぷ,Googleデスクトップ,秀丸,EmEditor7,サクラエディタで 色々試してみた末に、私が辿り着いた結論・・・それは以下の4行をバッチファイルとして テキストエディタでWindowsのSendToフォルダに保存する事だった。 (Win95/98/Me/NT/2000/XP共通。引数はフォルダのみ指定可。引数省略時はカレントフォルダが用いられる) ↓ if "%OS%"=="Windows_NT" if "%~1"=="" START "NT系" "C:\Program Files\sakura\sakura.exe" -GREPMODE -GREPDLG -GOPT=SRP2 -GCODE=99 -GFILE="*.*" -GFOLDER="." if "%OS%"=="Windows_NT" if not "%~1"=="" START "NT系" "C:\Program Files\sakura\sakura.exe" -GREPMODE -GREPDLG -GOPT=SRP2 -GCODE=99 -GFILE="*.*" -GFOLDER="%~1" if not "%OS%"=="Windows_NT" if "%1"=="" START "C:\Program Files\sakura\sakura.exe" -GREPMODE -GREPDLG -GOPT=SRP2 -GCODE=99 -GFILE="*.*" -GFOLDER="." if not "%OS%"=="Windows_NT" if not "%1"=="" START "C:\Program Files\sakura\sakura.exe" -GREPMODE -GREPDLG -GOPT=SRP2 -GCODE=99 -GFILE="*.*" -GFOLDER="%1"
416 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/09/20(土) 10:48:55 ID:gsMu6jOQ0] ちなみに>415と同じ事をバッチファイルの代わりにVBScriptファイルで実現しようとすると、こうなる。 ↓ Option Explicit Dim WshShell,FSO,corArgs,strCi,intRet Set WshShell = CreateObject("WScript.Shell") Set FSO = CreateObject("Scripting.FileSystemObject") Set corArgs = WScript.Arguments strCi = Chr(34) & "C:\Program Files\sakura\sakura.exe" & Chr(34) & " -GREPMODE -GREPDLG -GOPT=SRP2 -GCODE=99 -GFILE=" & Chr(34) & "*.*" & Chr(34) & " -GFOLDER=" & Chr(34) If corArgs.Count > 0 Then strCi = strCi & FSO.GetAbsolutePathName(corArgs(0)) & Chr(34) Else strCi = strCi & FSO.GetAbsolutePathName(".") & Chr(34) End If intRet = WshShell.Run(strCi , 1, true) Set FSO = Nothing : Set corArgs = Nothing : Set WshShell = Nothing WScript.Quit(intRet)
417 名前:名無しさん@お腹いっぱい。 [2008/10/18(土) 08:41:04 ID:GQh/h9b80] >>406 逆なんだよ。 検索ソフトというよりgrep検索を使う人は、ふだん and 検索はあまり使わないのだ。 そもそも、grep検索の類は元々行思考で、 UNIXのgrepとか見てもらえばわかるけど、 ファイルの中から特定の文字列を探す、というよりは、 ファイルの中にある特定の文字列のある行を探す、という発想から来ている。 そして、これらは、テキストやソースコードからの検索、 コマンドラインからのパイプを利用したフィルタリングに適している。 and検索などとは質や思想、歴史が違うもの。 で、and検索とかが需要がないかといえば、 googleのようなweb型(というかSQL型?)の検索は身近にあり、 普段検索を使わないユーザーも使いたいと思うようになってきたわけだ。 ということで、>>406-407 が作るか、プログラマ捕まえて作らせるか、 既存の検索ソフト作者に要望を出すなりして、搭載されれば、使う人はいると思うぜ にわか知識だから違うとこあったら、突っ込んでください。
418 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/11/07(金) 07:51:38 ID:GZJGpHTXO] andやorができるgrep機能があるエディタもある。 それはさておき、何事も適材適所でしょ。
419 名前:名無しさん@お腹いっぱい。 [2008/11/07(金) 08:44:03 ID:WstjcLv10] >>418 > andやorができるgrep機能があるエディタもある。 ソフト名を教えて頂けると嬉しいです。
420 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/11/07(金) 19:30:55 ID:GZJGpHTXO] 標準じゃないところが微妙だけど、xyzzyでggrepマクロとか。 あれは、notや複数行もできるからそこそこ便利。
421 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/01/05(月) 05:12:56 ID:Wd/Hy0dZ0] こんな grep ツールはありませんか? 1. 一般的な正規表現が使える 2. エディタ内蔵のものより高速 3. コマンドラインオプションで "サブフォルダを検索" が切り換えられる エディタは秀丸を使っていますが、grep はあまり速くありません。 サクラエディタの grep は秀丸と同等かそれより若干遅かったです。 Devas は速度的にはとても良いのですが、2 が上手く働きません。 JGrep は 2 のオプションがありませんでした。 FileDiver はとても速かったのですが、どうも正規表現の処理に不備があるらしく、 検索できないことがあったので 1 の条件から外れているみたいでした。
422 名前:421 mailto:sage [2009/01/05(月) 05:14:36 ID:Wd/Hy0dZ0] すいません、連投です。書き直しです。 こんな grep ツールはありませんか? 1. エディタ内蔵のものより高速 2. 一般的な正規表現が使える 3. コマンドラインオプションで "サブフォルダを検索" が切り換えられる エディタは秀丸を使っていますが、grep はあまり速くありません。 サクラエディタの grep は秀丸と同等かそれより若干遅かったです。 FileDiver はとても速かったのですが、どうも正規表現の処理に不備があるらしく、 検索できないことがあったので 2 の条件から外れているみたいでした。 Devas は速度的にはとても良いのですが、3 が上手く働きません。 また JGrep には 3 のオプションがありませんでした。
423 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/01/05(月) 09:45:02 ID:qB0VdL2g0] >>422 Devasのサブフォルダ検索は普通に使えたよ コマンドラインオプションの指定を間違っているのでは? grep っぽく書くとこんな感じ Devas -r -n -mr -s PATTERN C:\foo\bar\DIR -f *.ext
424 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/01/05(月) 11:41:37 ID:lrnydOYn0] >>421 秀丸でgrep時に 最小化状態 にチェック入れろ ヘルプも読まないヤツが多すぎ
425 名前:421 mailto:sage [2009/01/05(月) 15:09:15 ID:Wd/Hy0dZ0] >>423 うーん、何ででしょうね、やっぱりできませんでした。 >>424 そういえばそんなオプションありましたね。数年間無視してました。 これ、いいですね。
426 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/01/17(土) 22:28:54 ID:XvdGgZzy0] 書庫内、テキストファイル、ワード、エクセル、一太郎などのファイルから 検索するならどれが一番早いかな? できれば置き換え機能もあるとなおいいです。
427 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/01/17(土) 23:31:36 ID:Npmzmqjq0] >>426 気軽に〜で聞いたほうが早いと思うぞ ここは基本的にテキストファイルの全文検索や置換のスレだし 前処理しないでバイナリ文書の全文検索するなら xdoc2txtとgrepを使えばできる どのファイルに検索パターンが現れるか知りたいだけなら、それで十分のはず
428 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/01/19(月) 08:26:03 ID:m3CgJiuZ0] >>427 了解です。 そっちにいって聞いてきます。
429 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/01/23(金) 08:21:45 ID:Bbrxzagz0] Migerp ワードやエクセル内の検索できるってあるけど 精度かなり悪いね・・・これはちょっと使えないね。
430 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/01/26(月) 00:07:33 ID:6zB1ppT+0] キャッシュを作って高速に検索できるソフトってありますか? デスクトップ検索みたいに全体ではなく、特定のフォルダのみを対象に出来るものです テキストだけ対応してくれてればいいのですが
431 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/01/26(月) 00:40:52 ID:+xAVQSju0] >>430 butterfly_search
432 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/01/26(月) 01:44:33 ID:6zB1ppT+0] >>431 ありがとうございます! だめもとで聞いてみたのですが、まさに希望通りでした janeのログフォルダを素早く検索したかったんですが 結果を直接janeで開けるようにスクリプトをかまして使ってみます 欲を言えば、起動中に登録フォルダの監視もしてくれればなぁなんて・・・
433 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/01/26(月) 01:54:46 ID:+xAVQSju0] >>432 ああ、2chのログか それなら「スレッド全文検索」というソフトもあるね
434 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/01/26(月) 02:20:02 ID:6zB1ppT+0] >>433 おお!こんなのがあったなんて全く知らなかった ほんとにありがとうございます 聞いてみてよかった
435 名前:名無しさん@お腹いっぱい。 [2009/01/26(月) 16:40:13 ID:bjetuDXC0] >>432 オレは 2chの全文検索は、datE ってのを使ってる。 index全部で1GB超えて笑ったがw
436 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/02/10(火) 14:38:40 ID:DjKfH5xk0] grep-2.5.4
437 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/02/11(水) 15:52:39 ID:jOfQULL60] 俺の使っているソフトってPerl互換の正規表現対応と言っているけど、 ab cd を検索するのに /ab.cd/m でヒットしない。なんで?バグ?
438 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/02/11(水) 16:08:41 ID:Vi23trh40] >>437 プログラム名もバージョンもなしにバグ?とか言われてもしらんがな が、どうせCRのせいじゃない? /ab\r.cd/m にしないとヒットしないとか /ab(?:\r)?.cd/m のほうがいいだろうけれど
439 名前:438 mailto:sage [2009/02/11(水) 16:42:58 ID:Vi23trh40] (?:\r)? はないな。\r?だ yagrep なら yagrep -P "ab(?:.|\n)cd" FILE ... のようにしないといけないみたい -p で Keysが表示されるけれど、 /pattern/m の複数行モードが有効じゃないようだ
440 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/02/11(水) 18:12:53 ID:jOfQULL60] >>438 ありがとう。仰るとおりでした。 教科書には\nと書いてあるのに。。。詳説正規表現よりもっと実践的な本を読むべきですね。
441 名前:名無しさん@お腹いっぱい。 [2009/02/14(土) 17:22:21 ID:9EJ9KTcC0] AIRGrep ttp://web2memo.blog120.fc2.com/blog-entry-222.html
442 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/02/21(土) 17:07:38 ID:BBRjOnHv0] JGREP2の「除外ファイル拡張子」の指定方法をご存知の方いたら、 教えていただけないでしょうか? .hg;*.ico;*.png;*.jpg;*.gif などと指定してみたのですが、うまく除外できないです・・・
443 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/02/21(土) 17:52:54 ID:bIlwx/ZL0] >>442 hg,ico,… ,区切りで拡張子のみ書けばいいみたい
444 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/02/23(月) 10:35:36 ID:YjXkdAm30] >>443 ああ、そうだったのk!全然きづかなかった。 .ico,.hgとかもやっててできずにあきらめてたんだ
445 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/02/23(月) 10:36:09 ID:YjXkdAm30] 俺が遅れたありがとう。
446 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/02/23(月) 15:53:56 ID:7c4yzT060] 除外フォルダを指定できるヤツってないですかね?
447 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/02/24(火) 01:35:11 ID:kRrBpCOK0] >>446 grep の比較的新しいものなら --exclude とか --exclude-dir とかでできるよ
448 名前:446 mailto:sage [2009/02/26(木) 00:37:07 ID:muhWwqb10] >>447 ありがとう 早速試してみます