単語の読みに同じ文字が3回続けて出現する単語をSKKの辞書から探す
はてなブックマークにこういうのを見付けたので、実際どれくらいあるものかと思い、SKKの辞書から抽出してみました。
$ nkf -w SKK-JISYO.L | ./find3chars.awk | cat -n 1 かたたたk /肩叩/ 2 --- /——/ 3 ---- /——/ 4 ... /…/・・・;中黒x3/……;三点ダッシュx2 →....../ 5 ...... /……/ 6 1000 /千/サウザンド/thousand/ 7 aaa /トリプルA/ 8 basssolo /ベースソロ/ 9 businessscene /ビジネスシーン/ 10 businessschool /ビジネススクール/ 11 businesssoft /ビジネスソフト/ 12 casssini /カッシーニ/ 13 crossstitch /クロスステッチ/ 14 dressshirt /ドレスシャツ/ 15 dressshirts /ドレスシャツ/ 16 fff /フォルテッシシモ;ffより強く/fortessissimo/ 17 grassski /グラススキー/ 18 kissscene /キスシーン/ 19 parisiennne /パリジェンヌ/ 20 ppp /ピアニッシッシモ;ppより弱く/pianississimo/ 21 presssheet /プレスシート;和製英語/ 22 sssize /SSサイズ/SSサイズ/ 23 stainlesssteel /ステンレススチール/ステンレススティール/ 24 successstory /サクセスストーリー/ 25 uuu /ウンウンウニウム/Unununium/ 26 いとこおおおじ /従兄弟大小父/ 27 いとこおおおば /従兄弟大小母/ 28 うんえいいいん /運営委員/ 29 うんえいいいんかい /運営委員会/ 30 おおおか /大岡/ 31 おおおかえちぜん /大岡越前/ 32 おおおかさばき /大岡裁き;人情的な裁定/ 33 おおおかやま /大岡山/ 34 おおおかやまえき /大岡山駅/ 35 おおおく /大奥/ 36 おおおくさま /大奥様/ 37 おおおじ /大叔父;祖父母の弟/大伯父;祖父母の兄/従祖父/ 38 おおおとこ /大男/ 39 おおおば /大叔母;祖父母の妹/大伯母;祖父母の姉/従祖母/ 40 おおおみ /大臣/ 41 おおおやぶん /大親分/ 42 おおおんな /大女/ 43 かたたたき /肩叩き;辞職勧告/ 44 かみおおおか /上大岡/ 45 きききりん /樹木希林/ 46 きんゆうさいせいいいんかい /金融再生委員会/ 47 けいきゅうかみおおおか /京急上大岡/ 48 こうへいいいんかい /公平委員会/ 49 こくさいほげいいいんかい /国際捕鯨委員会/ 50 ざんていいいん /暫定委員/ 51 ざんていいいんかい /暫定委員会/ 52 しめいいいんかい /指名委員会;委員会等設置会社の取締役会内に設置される委員会/ 53 そこここ /其処此処/ 54 たいかいいいんちょう /大会委員長/ 55 ちょうていいいん /調停委員/ 56 ちょうていいいんかい /調停委員会/ 57 でんききき /電気機器/ 58 でんきききこうがく /電気機器工学/ 59 ひょうかかかく /評価価格/ 60 ふくしししゅつ /福祉支出/ 61 ふともももく /フトモモ目/Myrtales/ 62 ふともももくあぐん /フトモモ目亜群/ 63 みんせいいいん /民生委員/ 64 やまもももく /ヤマモモ目/Myricales/
25行目までの内容は今回抽出したいものとは趣旨が違いますが、26 - 64行目までの39件がSKKの辞書で確認できました。ぱっと見には、「い」または「お」が続くケースが多いようですね。ただしこの方法ですべての単語が網羅できているわけでもありません。たとえば「獅子身中の虫」がここにはありません(SKK-JISYO.L に単語として収録されていませんただしSKK-JISYO.requested には含まれています)
またこの方法で抽出できた単語のうち、同じ文字が4文字以上出現するケースは一つもありませんでした。
実際の抽出方法ですが、SKKの辞書はこちらのリポジトリからダウンロードしました。 github.com
またSKKの辞書は EUC-JP なので、nkf でUTF-8 に変換しつつ、単語の読みに同じ文字が3回続けて出現するケースを下記のスクリプトで抽出しています。このスクリプトは macOS 上で試したのですが、macOS標準のawkは substr() で Unicode文字を正しく数えられないようでしたので、代わりに homebrew でインストールした gawk を使用しています。
#!/usr/local/bin/awk -f { count=0 prev = substr($1,1,1) for ( i = 2 ; i <= length($1) ; i++ ) { current = substr($1,i,1) if ( prev == current ) count++ else count=0 #print count, current prev = current if ( count >= 2 ) { print $0 next } } }