質問: テキストデータに書いてある文字(行)をシャッフルしたい秀丸エディタなど テキストデータにある文字をシャッフルする方法はありますか? 例えば、 aaa bbb ccc ddd eee を eee bbb aaa ddd ccc のような感じでもともと順番にあった行を変えてシャッフルみたいな感じに したいです。 秀丸エディタやさくらエディタでこのようなことは出来ますでしょうか?
回答: 秀丸エディタ マクロ作者会議室 - スレッド05158, 06/06/23 http://maruo.dyndns.org:81/hidesoft/hidesoft_4/x05158.html に同様の質問があり、回答者がマクロを作成していますので できるかできないかでいえばできる。ということになるでしょう。 sakura エディタは使ったことがないのでわかりませんが 多分似たようなものでしょう。 ただ、こういった場合は無理にエディタのマクロで 実現するよりも、perlやrubyなどのユーティリティを使った方が 後々楽にできるのではないかと思います (emacsあたりを持ってくるなら別ですが)。 たとえばperlではこんな感じになります。 #!/usr/bin/perl use strict; use warnings; use file::slurp; use list::util qw(shuffle); my $target = shift || 'sample.txt'; my @lines = read_file($target); my @shuffled_lines = list::util::shuffle(@lines); print @shuffled_lines; これに aaa bbb ccc ddd eee という内容のファイルの名前を与えて実行すると、 bbb eee ccc ddd aaa こんな感じになります(毎回このとおりに並ぶわけではありません)。