[[ハム活動記]]
*どうでも良いこと [#z6967547]

&ref(./so.png,50%);


総務省のHPからアマチュア局を検索したら、 433365局がひっとした。

それにしても沢山の局が登録している。

試しに500局をダウンロードして、コピペでファイルに保存。~
その中でコールサインだけ抜き出すにはどうすれば良いか?

まぁ手っ取り早く正規表現を使ってパターンマッチさせれば良い

で、
**アマチュア無線局 コールサインの正規表現は [#y4dfd052]

JA1から始まる。7Aから始まる。8Jから始まる。 この3パターンがあります

 /J[A-S]\d\w{2,3}/
 /7[A-S]\d\w{3}/
 /8[J-N]\d\w+/

正規表現で書くとこのようになります。

肝心な正規表現が掛けたので、perlでコーディングしました

猛者なら1行で掛けてしまうかもしれませんが・・・

 use strict;
 
 my $fn="1-1.txt";
 my @call_list;
 my $ct=0;
 
 if(!open(SOUMU, "<:utf8", $fn)){print("File Open ERR $fn\n");}
 while(<SOUMU>){
 	my $rec = $_;
 	
 	if($rec =~ /J[A-S]\d\w{2,3}/){  JA〜JSその後ろに数字1桁、その後ろに文字2〜3桁
 		push(@call_list,$&);
 	}
 	if($rec =~ /7[A-S]\d\w{3}/){
 		push(@call_list,$&);
 	}
 	if($rec =~ /8[J-N]\d\w+/){
 		push(@call_list,$&);
 	}
 }
  close SOUMU;
 
  foreach my $p(@call_list){ $ct++;  print "$ct $p \n"; }

出力をリダイレクトしてあげると、結果をファイルに落とせます。

ぴったり500件有ったので、抽出ミスはありませんでした。

***それがどうした [#c2b7a7ee]

交信中にその局の情報が欲しい時って有りますよね。~
簡単にアクセスして情報を取得出来ればいいのですが、何ステップかしないと取得できない・・・て、なんか面倒くさ!

まぁ、ワンステップで検索するにはどうしたら・・・と考えている時の産物・・・

どうでも良いことでした。

&ref(./t.png,50%);

トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS