いろは順,それとも千字文かと,文章を読んでいくと,「虫」ほか,出現する漢字に重なりがあります.やや長いなあとも思いました.
王さまの気ぶんかあ,カブトムシをとりに公園へ行ったなあとか,昔を懐かしみながら読んでみると,最後の文に,やられました.
あと 一年生では かいがらの 「貝」 という字をならいます。
何だこの取って付けた感は!? …
取って付けた感といえば,ネット上で有名なのは「ねこ大好き」です*1.縦読みを作るための,苦し紛れの表現です.
上の文も,「貝」の字が中に入れられなかったので,後付けしたとしか思えません.読み直してみると,「一」から「十」までは番号となっていて,「八」と「九」の間に何も書かれていないのも,やや無理のある文章に見えます.
それはそれとして,小学1年生新出漢字が全部入っているかを,Rubyのワンライナーで検証することにします.先に断っておきますが,漢字だけです.「読みが全部」かどうかまでは見ていません.
HTMLの本文をコピーして,kanji1.txtという名前で保存します.その上で,いくつかコマンドを実行します.
$ ruby -e 'puts ARGF.read.split(//).map{|c|c=~/[一-龠]/?c:nil}.compact.uniq.sort.join' kanji1.txt
一七三上下中九二五人休先入八六円出力十千口右名四土夕大天女子字学小山川左年手文日早月木本村林校森正気水火犬玉王生田男町白百目石空立竹糸耳花草虫見貝赤足車金雨青音
$ ruby -e 'puts ARGF.read.split(//).map{|c|c=~/[一-龠]/?c:nil}.compact.uniq.join' kanji1.txt
文字正一年生中虫町子名草上犬石下足本先二火月出耳三天気日男大女花右左円田水人村見四糸王土手白金青玉五学校夕空赤立百千目川口入六竹雨音七休早山森林木小力八九車十貝
$ ruby -e 'puts ARGF.read.split(//).map{|c|c=~/[一-龠]/?c:nil}.compact.sort.join' kanji1.txt
一一一一七三上下中中中九二五人人休先入入入八六円出出出出力十千口右名四土夕大天女子子子字字学小山川左年年年手文文日日早月木本本本村林校森正気気水火犬玉王生生生生田男町白百目石空立竹糸耳耳花草虫虫虫虫虫虫虫虫虫虫虫虫見貝赤足車金雨青音
上の3つのうち,最初のコマンドが,テキストファイルに出現する漢字*2について重複を取り除き,文字コードでソートして出力したものです.そこからsortを取り除いたのが2番目で,これはテキストファイルの漢字の出現順となります(「貝」の出現は,最後です).メソッドチェーンにおいてsortではなくuniqを取り除いたのが3番目で,重複除去がないため,文章中に同じ漢字が何度出現したかが容易に分かります.
別の情報源の新出漢字と,照合しておきましょう.別表 学年別漢字配当表:文部科学省の第1学年,「一」から「六」までをコピーして,手元でkanji2.txtと保存します.以下のコマンドで,同じになることを確認できました.
$ ruby -e 'puts ARGF.read.split(//).map{|c|c=~/[一-龠]/?c:nil}.compact.uniq.sort.join' kanji2.txt
一七三上下中九二五人休先入八六円出力十千口右名四土夕大天女子字学小山川左年手文日早月木本村林校森正気水火犬玉王生田男町白百目石空立竹糸耳花草虫見貝赤足車金雨青音
$ ruby -e 'puts ARGF.read.split(//).map{|c|c=~/[一-龠]/?c:nil}.compact.uniq.sort.join' kanji2.txt | md5sum
fe3661dfecd632a59eef3486698f8566 *-
$ ruby -e 'puts ARGF.read.split(//).map{|c|c=~/[一-龠]/?c:nil}.compact.uniq.sort.join' kanji1.txt | md5sum
fe3661dfecd632a59eef3486698f8566 *-