• 締切済み

テキストファイルの行をソートする各5文字目の文字でソートする方法はありませんか

テキストファイルを行毎にソートする方法はありますが、 行始めに番号などが付いている為、それを避けて例えば5字目を注目、それでソートする方法があったら教えてください。

みんなの回答

noname#175529
noname#175529
回答No.6

なるほどそういう不具合があるのですか。普段あまり使っていないので、気づきませんでした。情報ありがとうございました。 ところで、作者へのフィードバックですが、メールにはいろいろ制限を設けているようですが、BBS(下記URL)は開かれているので、そちらから連絡なさっては如何でしょうか。又聞きで投稿するのも気が引けますので。 http://park15.wakwak.com/~yu-ki/cgi-bin/bbs_s/yybbs.cgi

katomojp
質問者

お礼

いいソフト紹介してもらって有難う。 あの後、もう一度初めから入れ替えたり色々検証した結果 日本語は行頭しかソートできないのは誤りでソート出来ることがわかりました。ただ行が偶数行でソートしないとすこし不具合があるようです。しかし私の目的では行末の氏名でソートするのが目的なので使えそうです。あちらには一度コンタクトをとって見ます。 有難うございました。前からの懸案が晴れました。

全文を見る
すると、全ての回答が全文表示されます。
noname#175529
noname#175529
回答No.5

ANo.1,3,4ですが、当方では、少なくともヘルプの「文字位置の指定について」にある[例]のとおりには機能しました。 この例にあるように、「文字位置の数値」、「行末から数えるON/OFF」を都度変えて「一時設定」として保存しながらソートを実行した結果、その通りにソートされました。 もし、そうならないとしたら、原因は、 1)「行末から数える」のON/OFF設定を誤っている 2)設定の「保存」をしていないため、その設定がソートに反映されない あたりでしょうか。

katomojp
質問者

お礼

その後ソフトを入れなおしてからはじめました。そしたら上の現象はありましたが、日本語も出来るようです。 もうすこし試して礼をいうべきでしたが、いまから外出しますので、とりあえずお礼を、OKwaveのシステムでは回答の補足は一回になっていますので、巧くゆきましたら、感謝、 とりあえず

katomojp
質問者

補足

お手数おかけします。原因らしいものわかりました。 行頭でのソートは日本語でもできます。しかし三字目など指定する と日本語は受け付けない様です。それで行頭でソートされます。 数字とか英語は受け付けます。英語は全角同士でも半角同士でも 大文字・小文字を区別しながらソートできる様です。お手数ですが一度試してください。 せっかくの良いソフトもう一歩なのでなんとか改良してもらって 使いたいのですが、私では連絡方法がありません。出来ればそちらから 作者に伝えてください。 出来たら使いたいものです。

全文を見る
すると、全ての回答が全文表示されます。
noname#175529
noname#175529
回答No.4

先のURLは最後の「そ~太2nd」まで含めてアドレスです。コピペではそうならないみたいですが。

全文を見る
すると、全ての回答が全文表示されます。
noname#175529
noname#175529
回答No.3

ANo.1ですが、このソフトはもちろん「そ~太 2nd」ですよ。 次のページにReadmeがあったので引用しただけですが、何か問題でも? http://park15.wakwak.com/~yu-ki/software.htm#そ~太2nd

katomojp
質問者

補足

そ~太2nd ですが、ソートの条件として ソート設定を出し、文字位置指定にチエック、位置を+5 としましたが、やはり最初の文字によるソート結果です。 なお、フアイルを入れただけで自動的にソートされるに は驚きました。 方法が間違っているのでしょうか? 正しい方法を御教えください。 

全文を見る
すると、全ての回答が全文表示されます。
noname#223623
noname#223623
回答No.2

> テキストファイルを行毎にソートする方法はありますが この"方法"が何を指すのかわからないので、sortコマンドと勝手に推測して回答します。 5番目の文字から比較するときは  sort /+5 sample.txt としてください。 自分はWin2000なのでXPだと違うかもしれません。sort /? で確認してください。 sortコマンドではなくてフリーソフトとかの話だったらソフト名の補足を。

katomojp
質問者

お礼

早速の返答有難うございます。すこしやってみましたがうまくゆきません。秀丸、wordPro(LOTUS)、Word をつかっています。 すこしやってみます。質問の仕方も悪かった為、また其のうち再質問をしたいと思っています。 ありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。
noname#175529
noname#175529
回答No.1

検証していませんが、READMEに、 「任意の文字位置を指定してのソートが可能」 という記述がありますのでお試しください。 そ~太 2nd プレーンテキストに於いて行単位のソートを行う http://www.vector.co.jp/soft/win95/util/se127691.html

katomojp
質問者

お礼

その後検証してみましたが、日本語の場合2とか6行目でソートする とほぼ巧く行くようです。ほぼとはーとか^とか特殊な文字があると すこし乱れます。しかし私の目的は行末の名前でソートしたいので これで充分です。 いままでは、テキスト文をExcelに写し処理して目的のところを最上段に持ってきて、、処理していました。これでは大量はむりでした。 有難うございました。

katomojp
質問者

補足

早速のご返事有難うございました。 >検証していませんが、READMEに、 >「任意の文字位置を指定してのソートが可能」 >という記述がありますのでお試しください。 ですが、このソフトは何を指しているのでしょうか? wordですか? ソー太は使ってみました。使いやすい良いソフトですが、 肝心な部分がみつかりません。質問はメールでできない 様です。ウィルスに攻撃されているとの事

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • Sortコマンド以外で行をソートする方法

    Sortコマンドを使ってテキストファイル内の行をソートしていたのですが、扱うテキストファイルの内容によってエラーが出てしまい、エラーメッセージをWEBで検索して書かれていた対策をしたのですがうまく行きませんでした。 ですので、Sort以外のコマンドで、テキストファイル内の行を昇順と降順でソートしたいと考えているのですが、何か方法はないでしょうか。 Windowsのコマンドプロンプトで使用出来るものであれば、AWKでもPerlでもその他のコマンドでも構いませんし、スクリプトファイルを読み込めるコマンドでしたらスクリプトでの書き方でも結構ですので、ご存知の方がおられましたら教えて頂けないでしょうか。

  • 複雑なテキストファイルのソート方法

    UNIX上で以下の様なテキストファイルがあります。 1 subckt keyword1 2 : 3 ends keyword1 4 subckt keyword2 5 : 6 ends keyword2 7 subckt keyword3 8 : 9 ends keyword3 10 M0(net1 net2 net3 net4) keyword4 11 M1(net5 net6 net7 net8) keyword5 subckt~endsはひとつのブロックです。(よって、1~3、4~6、7~9はひとつのブロックとしてあつかいます。) ブロックとしての記述と10、11行目のように1行で記述されたものが混在しているファイルです。 この様なフォーマットのファイルをサンプルのテキストファイルで記述されているkeywordでソートしたいのですが いい方法はないでしょうか? ブロックとして記述されている部分をばらけさせると意味がないのでブロックで記述されている部分はブロック毎 ソートしないと意味がありません。 スクリプトのようなものを組むしかないようにも思うのですが、いい方法が思いつきません。 どなたか御指南お願いします。

  • テキストファイルをソート

    テキストファイルをソートするにはどうすればいいでしょうか?

  • sort の1行の文字長の制限

    1行に含まれるデータが大きい(約24K)ファイルのソートを sort コマンドを用いて行おうとしていますが、「入力ファイルで20480 個以上の文字を含んでいる行があります」というエラーが出てソートができません。 この制限を拡張する方法をご存知の方、ご教授下さい。 環境は、HP-UX B.11.23 IA64 です。

  • テキストファイルのソート

    テキストファイルの中身をソートするにはどうすればいいでしょうか?おしえてください。

  • サイズの大きなテキストファイルのSORT

    3GB超のテキストファイルをSORTコマンドでソートしたいのですが、空(0KB)の出力ファイルが出来て処理が終わってしまいます。 数KB~数MBのテキストでは正常にソートされるのですが、GB単位になると上記の現象が発生します。 環境はWindowsNTServer4.0です。 ソートできるファイルサイズの上限、ディスクの空き容量等、制限があるのでしょうか? また、上記の現象を回避し、正常にソートする方法をご存知な方がいらっしゃいましたら、どうぞご教授ください。 宜しくお願い致します。 ↓ソートコマンドは至ってシンプルです。 sort /+1 < TEST.dat > OUT.txt

  • 文字数順にソートするには

    テキストファイルの行を文字数順にソートしたいのですが、 sort コマンドを使って行うことはできないのでしょうか? $ perl -e 'print for sort { length $a <=> length $b } <>' foo.txt でもいいのですが、行数が膨大なため、できるだけ早く処理したいと思っています。 もし何か方法がありましたら教えてください。お願いします。

  • テキストファイルを読み込んでソートするプログラム

    英文のテキストファイルを読み込んで、単語を一行に一単語ずつ並べた後、それをアルファベット順にソートして、同じ単語を消去したテキストファイルを作るプログラミングを作りたいと思っています。 しかしテキストファイルを読み込むという命令がよくわかりません。 isalpha()などを使ってプログラム内に打ち込んだ英文を単語ごとに分けるプログラムは出来たのですが、テキストファイル(.txt)はどうやって読み込めばいいんでしょうか? プログラムはGNOMEのXEmacsで作っていて、C言語です。

  • ファイル内の複数行にわたる文字ソートをしたいのですが。

    おはようございます。またまた行き詰まってしまいましたので、 質問させて下さい。 会社で使用している生産管理のソフトから出されるテキストファイがあります。 内容的には製品名、ナンバー、サイズ、数量などなどです。 いろいろ調べた結果、ナンバー(登録日)でソートされています。 しかし、これでは非常に見にくいので、製品名でソートしたいと思います。 製品名は、全て数字でつけてます。51-1とかって感じです。 そのテキストファイルの表示方法は、 # No = 1 partname = 51-1 sizeX = 100 sizeY = 200 # No = 2 partname = 41-2 sizeX = 500 sizeY = 200 # という感じで並んでいます。 これを逆の並びにしたいのです。 # No = 2 partname = 41-2 sizeX = 500 sizeY = 200 # No = 1 partname = 51-1 sizeX = 100 sizeY = 200 # #間区切りの情報はそのままの状態で、パーツ名を比較させて、昇順にそのパーツ名がある、#間の情報を全て並びかえたいのです。 どのような方法でできるのでしょうか? 僕は初心者に毛が生えた程度なので、具体的な方法を示していただけると、非常にありがたいです。 どうぞ、よろしくお願い致します。

  • エクセルで行をソートする方法

    はじめまして、PCにあまり詳しくないもので質問させていただきます。エクセルで列をオートフィルターを使ってソートするように行をソートする方法はあるのでしょうか??困っています。どなたか分かる方がいました是非お教えください。 宜しくお願いいたします。