perlで2つのファイル文字列を比較するサンプルコード
2022-01-30 13:38:38
要件 ファイル1から1行を取り出し、ファイル2の全データと比較し、同じものは保存し、そうでないものは削除する。
#! /usr/bin/perl
#use strict;
open(FILE1,"C:/Perl/BX/BX-Users.txt");
open(FILE2,"C:/Perl/BX/BX-Book-Ratings.txt");
open(result1,">C:/perl/BX/BX-Users_result.txt");
my $i=0;
my $j=0;
while((my $bxUser=<FILE1>)&&($i<10))
{
my $userId=substr($bxUser,0,index($bxUser,","));
while(my $rankUser=<FILE2>)
{
my $userIdCmp=substr($rankUser,0,index($rankUser,","));
if(($userId==$userIdCmp)&&($j==0))
{
syswrite(result1,"$bxUser");
$j++;
}
}
$j=0;
$i++;
}
close(FILE1);
close(FILE2);
close(result1);
コピーコード
コードは以下の通りです。
#! /usr/bin/perl
#use strict;
open(FILE1,"C:/Perl/BX/BX-Users.txt");
open(FILE2,"C:/Perl/BX/BX-Book-Ratings.txt");
open(result1,">C:/perl/BX/BX-Users_result.txt");
my $i=0;
my $j=0;
while((my $bxUser=<FILE1>)&&($i<10))
{
my $userId=substr($bxUser,0,index($bxUser,","));
while(my $rankUser=<FILE2>)
{
my $userIdCmp=substr($rankUser,0,index($rankUser,","));
if(($userId==$userIdCmp)&&($j==0))
{
syswrite(result1,"$bxUser");
$j++;
}
}
$j=0;
$i++;
}
close(FILE1);
close(FILE2);
close(result1);
関連
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
Perl学習ノート - CPANの使い方入門
-
ディレクトリ内のファイルを再帰的に走査するためのPerlスクリプト
-
スペースがセパレータである場合の perl qw 問題の解決法
-
perl による生物学的突然変異のランダムシミュレーションコード
-
perlの尖ったブラケット演算子(<>)について
-
perlでサブルーチンの引数を参照(渡す)する2つの方法
-
[解決済み] Perlからsedを使うには?
-
[解決済み] 演算子で指定された場所にベアワードが見つかりました。
-
[解決済み] Perlで「ハッシュの代入の要素数が奇数である」という警告が出る
-
[解決済み] スクリプトからの不正なヘッダー。不正なヘッダー=<!DOCTYPE html> です。