黎欄さん、イルカです。 ちょっと暇なので、activePerlで、 activePerlの入手先は下記などを参考に Perlのインストール
http://www.dream-seed.com/server/perl.html _____________________________ #!/usr/local/bin/perl open OUT ,">>./list.txt"; #list.txtをOUTというハンドルで開く $i = 1; #$iに1を代入 $Long = 8; #1行の長さを8文字に @CAT = ('A','B','C','D','E','F','G','H','I','J','K','L', 'M','N','O','P','Q','R','S','T','U','V','W','X', 'Y','Z','1','2','3','4','5','6','7','8','9','0' );#使用する文字
$MAX = $#CAT; #使用する文字の数を取り出して
while( $i < 100000){ #100,000まで undef $line; # $lineを初期化して foreach ( 0..$Long){ # 桁数回処理 $charNum = int ( rand $MAX); # 乱数 $line .= $CAT[$charNum]; # 何番目の文字か } print OUT "$line\n"; # ファイルに追記 $i ++; } close OUT;  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ これで、100,000行のデータを作って(1秒の半分) ______________ #!/usr/local/bin/perl
open (LIST,"<./list.txt"); open (OUT,">>listOut.txt");
$keyword = 'DDD'; # キーワード $i = 0; $Moji = 'Y'; # 探す文字 while(<LIST>){ # 1行ずつ処理 if ( /$Moji/ ){ # パターンマッチ $i++; $j = sprintf ("%04d",$i); # 0023 にする $line = $j.$keyword.$_ if /$Moji/; # 連結 } else{ $line = $_; } print OUT "$line"; } close LIST; close OUT;  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ で処理、こちらは・・・1秒どころか、一瞬で終わった
結果 ______________list.txt WVPX1YP5P ZWK465QWD HL3ANNTJO UIVU5TCXG 2QVCFVSQW VAZUSJALQ GRBEM2MHO 6VZEOPF28 ZGTTHLLKJ RIR1BCFQU IWV8YTDDS QRWW2TO9K X9BXU1BLZ DGILPA4N2 URNJ9MO3Y EI6LHYXLU PW75TBRAH B6ZZ1HUB2 81KUP5RZV T1OICAAXG 以下略
_______listOut.txt 0001DDDWVPX1YP5P ZWK465QWD HL3ANNTJO UIVU5TCXG 2QVCFVSQW VAZUSJALQ GRBEM2MHO 6VZEOPF28 ZGTTHLLKJ RIR1BCFQU 0002DDDIWV8YTDDS QRWW2TO9K X9BXU1BLZ DGILPA4N2 0003DDDURNJ9MO3Y 0004DDDEI6LHYXLU PW75TBRAH B6ZZ1HUB2 81KUP5RZV T1OICAAXG 以下略
|