作者: Yさ
日時: 2008/6/26(00:50)
こん○○は、でびさん。


davi writes:

> 他に良い方法ってないでしょうかね?

ヒントだけでよければ、こんな感じでどうでしょう?
-----[usort.awk]
BEGIN{
  last=split("い,ろ,は,に,ほ,へ,と,ち,り,ぬ,る,を,わ,か,よ,た,れ,そ,つ,ね,な,ら,む,う,ゐ,の,お,く,や,ま,け,ふ,こ,え,て,あ,さ,き,ゆ,め,み,し,ゑ,ひ,も,せ,す,ん",tbl,",");
}
function GetPos(s, i){
  for(i=1; i<=last; ++i)
    if(s==tbl[i]) return i;
  return last+1;
}
{ n=length($0);
  for(i=1; i<=n; i+=2) printf("%02d", GetPos(substr($0,i,1) substr($0,i+1,1)));
  printf(",%s\n",$0);
}
-----

>gawk -f usort.awk in_file.txt | sort | gawk -F, "{print $2}"
いぬ
ろば
はむたろう
にんじん
ほらがい
へらぶな
とちのき
とり