• 締切済み

マッチング処理

Foxtrot_OWの回答

回答No.1

その質問文ではお望みの回答を得るのはとても期待できないでしょうね。その質問文を読んだ方がどのように正解を探ろうとするのか、考えてみてください。 >どのようにすれば、よいでしょうか? 参考URLをご覧ください。その上で質問文をよく練って質問してはいかがでしょうか。

参考URL:
http://www.hyuki.com/writing/techask.html#procedure

関連するQ&A

  • 「*」記号が1ファイルしか展開しない

    「*」記号はシングルクオテーションをつけるかつけないかで展開するファイル数が変わってくるのでしょうか? カレントディレクトリにfileAとfileBがある状態 find . *ile*  →エラー find . '*ile*'  →fileA, fileBが見つかる カレントディレクトリにfileAのみ状態 find . *ile*  →fileAが見つかる find . '*ile*'  →fileAが見つかる 上記動作の仕組みが良くわかりません。 識者の方、解説をお願いします。

  • phpでキーワードのマッチング処理

    phpでキーワードのマッチング処理を行おうと思ってます。 データベースよりおよそ20000件のデータを取得して ある文言に対して20000件のデータと照合しヒットしたカウント数まで 取得できればよいと考えてます。 mb_substr_count関数を使ってみたのですが、処理に時間がかかってしまいました。 もう少し早い処理が出来る方法はphpだけでは可能でしょうか?

    • 締切済み
    • PHP
  • Perlでのマッチング処理について

    検索CGIを作成しているのですが、検索文字に「ー」(-ハイフンではありません。日本語入力の言葉を伸ばすやつです。”サーバ”とか。)が入った文字を指定し、POSTするとServerErrorになってしまいます。サーバはレンタルものなので原因が分からず途方にくれています。どなたかPerlに詳しい方、ぜひよいアドバイスを下さい。ちなみに処理は下記のように行っています。 (1)検索する元のデータはsjisである。  ↓ (2)ブラウザのフォームから、検索したいデータがsjisでPOSTされる。  ↓ (3)ReadParseにてデータを変数へ取り込む。(cgi-lib.pl使用)  ↓ (4)CGIにて、POSTされたデータをeucへ変換。(jcode.pl使用)  ↓ (5)検索する元のデータが入ったファイルをオープン。  ↓ (6)ファイルから1行づつ読み込み変数へ格納。  ↓ (7)変数へ格納したデータをeucへ変換。  ↓ (8)if (${POSTされたデータ} =~ /${ファイルから読み込んだデータ}/)といった形でマッチング処理  ↓ (9)ファイルをクローズし、マッチングしたデータをsjisで結果表示。 ※まだデバッグ途中なのですが、とりあえず今判明しているのは 『インターネット』などというふうに、『ー』がキーに入るとエラーになります。 どなたかよろしくお願いします。

    • ベストアンサー
    • Perl
  • マッチング処理(1:N)

    はじめまして。cobol(easy)でマッチングしたいのですが、うまくいきません.jclデータなので ファイル内に重複はあります(ソートしても結果うまくいかず) 下記のようにPGしてます。 マスタは修正はいることはないので 1:N N:1マッチングです。 大小(=,<,>)比較ではうまくいかないので (=と^=)でマッチングしないとだめでしょうか? cobol、vbaの命令でも意味わかりますので ロジックのアドバイスいただけないでしょうか? よろしくお願いします。 ======PG=========== 初期リード(マスタ、トラン) メイン処理 do key1 ^= 999999 and key2 ^= 99999 key1 < key2(マスタ:トラン) マスタ出力 マスタ読み込み key1 > key2(マスタ:トラン) トラン出力 トラン読み込み key1 = key2(マスタ:トラン) do key1 = key2 ← key1 not key2 で抜ける マスタリード end-do トランリード end-do =======データ=========== 変更前(マスタ) 0001 //d0001 dd ssssssssss 0002 //dddd2 dd dddddddddd 0003 //d00003 dd 1111111111 0004 //d55454 dd 4444444444 -------------------------------- 変更後(トラン) 0001 //d0001 dd ssssssssss 0002 //dddd33 dd aaaaaaaa 0003 //d00099 dd 88888888 0005 //dd0000 dd 444444444 結果 -------------------------------------- 0002,0003のレコードは変更されている 0005は追加されている

  • マッチングの簡素化

    どなたかご存じでしたら回答をお願いします。 ナンバーズ3やナンバーズ4の予想をする上で、 下記の手順でマスターにしか存在しない予想数字を、 ボタンを押下したら、(3)の結果だけが出てくるようにするには エクセルVBAではどのようなコーディングでできますか? これまでは、VLOOKUP等の関数を使用してましたが、 毎回、毎回セルに予想数字を貼りつけて、関数も貼りつける作業が 面倒くさくなり、エクセルでシート予想数字の貼り付け後は、 ボタン押下したらマッチング結果がでてくるものが作りたく質問しました。 (1)こだわりの予想数字が入ったシート。【マスター】  : 056 067 078 089 125 126 127 128 129 145 156 167 178 189 235 236  : (2)WEBサイトにある予想数字を貼りつけたシート【トラン】  : 056 069 083 085 136 138 158 174 178 194 196 236 247 249 269 285  : (3)(1)に対して(2)の数字をマッチングして(1)のみに存在する結果を出力する。 056 178 236 【注意事項】  ・(1)、(2)ともそれぞれの予想数字の中には重複は無しとします。  ・(1)、(2)とも昇順に並べてある状態とします。  ・(1)、(2)とも件数は最大999件とします。  ・(1)、(2)、(3)それぞれシートは別れていても、同じ1枚のシートでもどちらでもよいです。  ・エクセルVBAと言いましたが、予想数字をシートに貼り付ける作業以外は自動になれば   やり方は問いません。   ・エクセル2007を使用します。 以上、よろしくお願いします。

  • 大きな2つのファイルから共通するデータを抜き出す方法を教えてください。

    2つのテキストファイルから共通する行を高速に抜き出す方法に困っています。 fileA.txtには 139 36.1 139.01 36.1 139.02 36.1 という感じで1万行ぐらいあり、 fileB.txtには 138.8 36.3 0.01 138.81 36.3 NaN 138.82 36.3 0.01 という感じで100万行ぐらいあります。 fileAと1、2欄目が共通する行をfileBから抽出しようと思って以下のawkのスクリプトを書きましたが、処理に異様に時間がかかってしまいました(5時間かけてたった300行ぐらいしか処理できない!)。 もっと高速に処理するための方法をぜひ教えてください。 BEGIN{FS="\t" while(getline <"fileA.txt" > 0) form[++n]=$1":"$2 } {for(i=1;i<=n;i++){ temp=form[i] if($1":"$2 == temp){print $0} } }

  • 2つのCSVファイルをマッチング

    ソート済みの2つのCSVデータをシーケンシャルマッチングし、お互いの不一致レコードと一致したレコードとをそれぞれ別ファイルに出力するwshを作成しました。 件数が多くなればなるほど、処理時間がかかってしまうようです。 シーケンシャルマッチング以外の方法で効率のよい方法はないでしょうか? 最近勉強を始めたばかりの初心者ですが、宜しくお願いします。

  • ファイルの排他について

    windows2000でDOSコマンドのcopyを使って ファイルをコピーをしようとしています。 コピー元のファイルが使用中(書き込み中)のときは ロックをかけるようなコマンドか引数はあるのでしょうか? 今は、普通に copy fileA fileB とやった場合、fileAが書き込み中でも 途中までの状態でコピーされてしまいます。 なにか良い対策を教えて下さい。

  • sortコマンドについて

    いつもお世話になっております。 sortコマンドについて質問させて下さい。 現在UNIXコマンドのsortによってファイルをソートしようとしています。 ソート対象となるファイルは下記の通りです。 ファイルの種類:csvファイル ファイルサイズ:80MByte 1レコード長:48Byte レコード数:120万レコード レコード例: 2,1000 ,1,10C0,15,0000000100000000000000000000000000000000 2,1117 ,1,10B0,16,0000000300000000000000000000000100000000 ・ ・ ・ そこで下記のようなコマンドにてソートしています。 sort -t, -k 1,1 -k 2,2 -k 3,3 -k 4,4 < fileA.csv > fileB.csv すると「sort:0653-657ソート中に書込みエラーが発生しました。」と出力され中断してしまいます。 自分なりにsortコマンドについて調べてみたところ、 /usr/tmpディレクトリのファイルシステムがいっぱいになることでコマンドが失敗しているようです。 (一時的にそのディレクトリにソート内容を展開しているようでした) 社内にて/usr/tmpディレクトリのファイルシステムの拡張を求めたところ「できない」と言われてしまいました。 開発の最終段階でのボリュームテストを行ったときの障害でしたので、 処理を大幅に変更するような対処は出来ない状況です。 代替方法などありましたらご教示頂きたいと思います。 以上、宜しくお願い致します。

  • 重複ファイルの検索ソフトについて

    重複音楽ファイル(mp3)を削除するさい、サイズが若干異なりファイル名も多少異なります。 そのため、重複ファイルを探す際にファイル名で検索を行いたいです。 ファイル名がK文字以上部分一致した場合同一とするソフトはないでしょうか? Kは自分で設定でき、特定の単語は重複文字として含まないようなのを探しています。 例えば tafileA tafileB tafillC とあった場合 Kを4に設定しNGをtaとするとta-fileA ,ta-fileBが重複と認識されta-fillCは別物とされるようなのを探しています。 まとめると 重複ファイルをファイル名の部分一致で探索するソフトを探しています