テキストフィルの行の文字数順にソートしたいのですが・・・

解決済みの質問

テキストフィルの行の文字数順にソートしたいのですが・・・

テキストフィルの行の文字数順にソートしたいのですが・・・
テキストファイルの行単位での文字数が多い順や少ない順に
ソートして並べ替えしたいのですが、その様なフリーソフトってないでしょうか?

ベクターなども、見たのですが、Aからとかの昇り順と降り順しかないので・・・
もしかしたら見落としかもしれません・・・

--------------------------
honey
shanshanmeimei
loverzday
artfree
tfsq
上記の物を下記にしたいのです。
--------------------------
shanshanmeimei
loverzday
artfree
honey
tfsq
--------------------------
この様に、文字数が多い順に並べ替えをしたいのです。
出来れば、少ない順も出来るソフトもあれば良いのですが・・・

よろしくお願いいたします。

投稿日時 - 2008-09-14 18:17:12

QNo.4328461

すぐに回答ほしいです

質問者が選んだベストアンサー

NO.3の方が紹介したOpenOffice.orgのCalcを使った
方法です。

1.Bなどの空いている列に次を入力
=LEN(A1)
※A1に単語がある場合です。A2から入力されている
場合、B2など横の空いているセルに「=LEN(A2)」
2.上記を入力したセルを選択してコピー
3.B2以降のセル(A列に入力された単語の文字数カウント
が必要な分)を選択して右クリック→「形式を選択して
貼り付け」
4.「すべて挿入」のチェックを外し、「数式」だけに
チェックを入れた状態で「OK」
※A列の横のセルに単語の文字数が入力された状態に
なるはずです。
5.A列の単語とB列の文字数が入力されたセルを選択
6.「データ」→「並び替え」を実行
7.最優先キーに「列B」を選択して「降順」にチェック
8.「オプション」タブを選択して「並べ替え結果の
貼り付け先」だけにチェックをつける
※入力欄には「C1:D30」など、結果を貼り付けるセルを
指定後、「OK」
9.必要のない列を削除してから「テキストCSV」で
保存すると良いです。
10.テキストエディタで「"」「'」「,」など要らない
部分を削除(※置換機能を使うと楽です)
ほとんどのテキストエディタでは、検索する文字列に
「要らない文字」、置換後の文字列を空欄で大丈夫な
はず...(※メモ帳でも可能でした)
※ファイルの拡張子は、TXTが良ければ「名前の変更」で
CSVからTXTに変更しても大丈夫です。

投稿日時 - 2008-09-19 14:15:30

お礼

回答有り難う御座いました。

ズバリ!詳しい説明で出来ました!
ここまで丁寧に回答して頂き誠に有り難う御座いました。

投稿日時 - 2008-09-22 19:09:36

0人が「このQ&Aが役に立った」と投票しています

回答(5

ANo.4

>ですが・・・コードを書くとは、どこにどうやって書くのでしょうか?

実は、コンピュータにはもっと自由自在に自分のしたいコトを指示することができるのです。

参考URL:http://www.ruby-lang.org/ja/

投稿日時 - 2008-09-14 19:01:29

お礼

すいません・・・
まったくもって、拝見したHPは、意味が解りません・・・・
何を、ど〜すれば良いのか・・・・・

投稿日時 - 2008-09-14 19:09:10

ANo.3

 
Excelが無いなら手に入れましょう
http://ja.openoffice.org/

 

投稿日時 - 2008-09-14 18:43:18

補足

お願いします。

>excelで読み込んで
>=len(A1)
>このように文字数を数える関数をB列に入れてB列で並び替え。
>後はB列を削除してtxt形式で保存してください

やってみたのですが、なんどやっても、ABCDとかの文字順位になってしまいます・・
=len(A1)は、B列の一番上に一回だけ入力すれば良いのでしょうか?
もうちょっと詳しくご教授下さい・・・

よろしくお願いいたします。

投稿日時 - 2008-09-14 19:04:20

お礼

有り難う御座います!
これでも、同じ事が出来るのですね!
今から、DLして来ます!
有り難う御座いました。

投稿日時 - 2008-09-14 18:47:17

ANo.2

古来からそういった作業は自分でコードを書けば解決です。

ruby -e 'puts ARGF.readlines.sort { |a, b| b.length <=> a.length }' inputfile.txt

少ない順にするのも明らかですね。

投稿日時 - 2008-09-14 18:34:13

お礼

回答有り難う御座いました

ですが・・・コードを書くとは、どこにどうやって書くのでしょうか?

よろしくお願いいたします。

投稿日時 - 2008-09-14 18:36:58

ANo.1

 
excelで読み込んで
=len(A1)
このように文字数を数える関数をB列に入れてB列で並び替え。
後はB列を削除してtxt形式で保存してください

 

投稿日時 - 2008-09-14 18:20:32

補足

申し訳ありません・・・
excelが、無いんです・・・

回答有り難う御座いました!

投稿日時 - 2008-09-14 18:34:19

新着

あなたの愛車は今いくら?

愛車無料査定Q&A特集

ニキビケアQ&A特集

スッピンでも輝くモテ美肌に。

教えて!みんなの婚活Q&A特集

みんなの婚活体験談、秘訣がいっぱい!

お部屋探しはCHINTAI

マチから探せる新しいお部屋探し!

注目ピックアップ

OKちゃんねる

OKWaveからみなさんに質問!

OKWave2009年ランキング

話題のQ&Aをランキングでご紹介!

スタッフブログ

知って得する!お得な情報をお届け!