awk ファンクラブ (333レス)
上
下
前
次
1-
新
168
: 2011/07/18(月)15:25
ID:7hj9vKr7(1)
AA×
>>164
>>0
>>0
>>164
>>0
[240|
320
|
480
|
600
|
100%
|
JPG
|
べ
|
レス栞
|
レス消
]
168: [sage] 2011/07/18(月) 15:25:02.07 ID:7hj9vKr7 しまったー!書き込む前にちょろっと書き換えたところがバグってました。mawkで動きません。 >>164の下のスクリプトは次に書き換えてください。 awk 'BEGIN{f=ARGV[1];while((getline<f)>0)a[n++]=$0;close(f);ARGC=1};{for(i=0;i<n;++i)if(tolower(a[i])~tolower($0))print a[i]}' awkのシーケンスポイントってC言語と同じなのかな…痛いミス。 おまけ。使ってるやつ。エスケープシーケンスを使って見つかった文字列に色を付けた。 awk 'BEGIN{f=ARGV[1];while((getline<f)>0)a[n++]=$0;close(f);ARGC=1}; {for(i=j=0;i<n;++i)if(k=match(tolower(a[i]),tolower($0)))print C(j=!j)I(I(a[i],C(39),k+RLENGTH),C(31),k);print C()}; function C(n){return"\033["n"m"};function I(x,y,z){return substr(x,1,z-1)y substr(x,z)}' パターンごとに改行を入れた。少し見やすいか? >>164の上のスクリプトに色を付ける機能を追加。ずっと分かりやすいと思う。 awk 'BEGIN{f=ARGV[1];while((getline<f)>0)a[n++]=$0;close(f);ARGC=1}; {for(i=j=0;i<n;++i){l=a[i];if(sub($0,C(31)"&"C(39),l))print C(j=!j)l}print C()}; function C(n){return"\033["n"m"}' subをgsubにするとマッチする全ての文字列に色を付けられるよ。 gawkならgensub使ってもう少し短く書けるかもしれない。IGNORECASE=1で簡単に大文字小文字無視できるし。 http://mao.5ch.net/test/read.cgi/linux/1215431118/168
しまったー!書き込む前にちょろっと書き換えたところがバグってましたで動きません の下のスクリプトは次に書き換えてください のシーケンスポイントって言語と同じなのかな痛いミス おまけ使ってるやつエスケープシーケンスを使って見つかった文字列に色を付けた パターンごとに改行を入れた少し見やすいか? の上のスクリプトに色を付ける機能を追加ずっと分かりやすいと思う をにするとマッチする全ての文字列に色を付けられるよ なら使ってもう少し短く書けるかもしれないで簡単に大文字小文字無視できるし
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
あと 165 レスあります
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
ぬこの手
ぬこTOP
0.041s