labunix's blog

labunixのラボUnix

回文をチェックする。




 参考:Wikiから
 http://mcaf.ee/q3mo8

 このくらいなら目視で十分。

$ echo -n 'なかきよのとおのねふりのみなめさめなみのりふねの おとのよきかな' | \
  wc -m
31

$ echo 'なかきよのとおのねふりのみなめさめなみのりふねのおとのよきかな' | \
  sed s/"."/"&\n"/g | tac | xargs echo -n |sed s/" "//g;echo
なかきよのとおのねふりのみなめさめなみのりふねのおとのよきかな

■1339文字あるという。

 参考:非魔神流こじつけ回文 by 非魔神
 http://www.geocities.co.jp/Playtown-Spade/9052/longkaibun.htm

$ wget -O - "http://www.geocities.co.jp/Playtown-Spade/9052/longkaibun.htm" 2> /dev/null | \
  nkf -E -w8 -Lu -d | grep -A 2 "〜原文の紹介〜" | tail -1 | sed s/"(.*"//g | xargs echo -n | wc -m
1339

$ wget -O - "http://www.geocities.co.jp/Playtown-Spade/9052/longkaibun.htm" 2> /dev/null | \
  nkf -E -w8 -Lu -d | grep -A 2 "〜原文の紹介〜" | tail -1 | sed s/"(.*"//g | xargs echo -n > base.txt

$ wget -O - "http://www.geocities.co.jp/Playtown-Spade/9052/longkaibun.htm" 2> /dev/null | \
  nkf -E -w8 -Lu -d | grep -A 2 "〜原文の紹介〜" | tail -1 | sed s/"(.*"//g | \
  sed s/"."/"&\n"/g | tac | xargs echo -n | sed s/" "//g > kaibun.txt

$ diff -s base.txt kaibun.txt
ファイルbase.txtとkaibun.txtは同一

■1195文字として紹介されているが、1196文字ある。。。

 1195文字の回文
 http://hakubun.ddo.jp/~sophia/ug/zip/z30.txt

$ wget -O - "http://hakubun.ddo.jp/~sophia/ug/zip/z30.txt" 2> /dev/null | \
  nkf -E -w8 -Lu -d | grep -A 30 'かんで' | xargs echo -n | \
  sed s/"\n\| \| \|「\|」\|、\|。\|『\|』\|,"//g > base2.txt

$ wget -O - "http://hakubun.ddo.jp/~sophia/ug/zip/z30.txt" 2> /dev/null | \
   nkf -E -w8 -Lu -d | grep -A 30 'かんで' | xargs echo -n | \
   sed s/"\n\| \| \|「\|」\|、\|。\|『\|』\|,"//g | sed s/"."/"&\n"/g | \
   xargs echo -n | sed s/" "//g > kaibun2.txt

$ diff -s base2.txt kaibun2.txt
ファイルbase2.txtとkaibun2.txtは同一

$ wc -m base2.txt
1196 base2.txt

$ sed s/"."/"&\n"/g base2.txt | wc -l
1196