人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

質問です
1000万位のtxtデータでA列からS列まであるとします
A列の文字列をaからzまでの頭文字と数字に分けてファイルに集約したい
なにか良い方法がありましたらよろしくおねがいします
大文字小文字の英数が含まれます

●質問者: inosisi
●カテゴリ:コンピュータ インターネット
○ 状態 :終了
└ 回答数 : 1/1件

▽最新の回答へ

1 ● hissssa
●100ポイント ベストアンサー

Windowsならfindstr、Unix系ならgrepで個別に分ければ良いのでは?
こんな感じで:

findstr /B /R /C:[Aa] source.txt > a.txt
findstr /B /R /C:[Bb] source.txt > b.txt
findstr /B /R /C:[Cc] source.txt > c.txt



findstr /B /R /C:[Zz] source.txt > z.txt
findstr /B /R /C:[0-9] source.txt > 0-9.txt


inosisiさんのコメント
ありがとうございます 使い方がわかりませんがプロンプトに記述するのでしょうか データはどこになんと言う名前でおくのでしょうか

hissssaさんのコメント
コマンドプロンプトから各行を直接打ち込むか、バッチファイルにして実行する事になります。 上記の「source.txt」が、その1000万位のtxtデータを保存したテキストファイルです。そのファイルをコマンドプロンプトのカレントディレクトリに置くか、「source.txt」のところにディレクトリつきでファイルの場所を指定して下さい。 それで上記の最初の1行を実行すれば、ファイル中の先頭文字がA/aである行だけが、「a.txt」に出力されます。

inosisiさんのコメント
ありがとうございます c:\source.txtに1000万件のデータを保存したテキストファイルで 出力されるc:\a.txtのファイルはあらかじめ作っておくのでしょうか

hissssaさんのコメント
出力ファイルは自動生成されます。すでにそのファイルが存在した場合は上書きされますので注意して下さい。 コマンドは、コマンドプロンプトから一つ一つ手で実行する場合は、ひとつ実行するごとに1ファイルが処理されます。 同じことを何度も実行したい場合は、上記コマンドを全て記述したバッチファイルを作っておけば、そのバッチファイルを実行することで連続処理されます。 バッチファイルの作り方や実行の仕方については、Googleで「バッチファイル」で検索すれば幾らでも入門サイトがありますのでそちらを参考にして下さい。

inosisiさんのコメント
ありがとうございます 参考にさせていただきます
関連質問

●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ