島内式ローマ字かな変換(しまうちしきローマじかなへんかん)とは、日本の数学者島内剛一(数学基礎論)によって考案されたローマ字かな変換の一方式である。
基本的には文字列のパターンマッチングと文法定義に基いており、コンピュータによる実行が容易であることから、日本語処理の分野では広く用いられている。
概論 ローマ字かな変換は、基本的にはパターンマッチングによって行える。ところが、「sinai」は「親愛」とも「市内/竹刀」とも解釈できるため、辞書引き以前に束構造データに落とさなければならない。
そこで、文字列のパターンマッチングと文法属性によって、この操作を実現したのがこの技法である。
具体的には、
「文法属性Xとマッチングパターン1 とマッチングパターン2と文法属性Y という四つ組データの羅列」である。
とはいえ「ka」は「か」に変換されるが、「kya」は「カ行音」として扱ったほうがよいのではないか、といった配慮がある。
「行頭」から「行末」という距離空間があり、「仮名の始まり」「仮名の終わり」という距離空間があるため、 [行頭] [行末] という定義を行ない、 [仮名の始まり] [仮名の終わり] を定義してから [仮名の始まり] - [行頭]; [仮名の終わり] - [行末]; とすれば足りるのだが、このとき空文字列が渡されると不具合が起きるため、呼び出し側のルーチンが配慮する必要がある。