ドキュメントの最後につける索引ページ、その索引語句をソートするときに 濁音を静音として評価してソートする必要がある場合があります。 このエントリーではその場合の対処例を書きます。
sed を使えば以下の通り。
y/がぎぐげご/かきくけこ/
y/ざじずぜぞ/さしすせそ/
y/だぢづでど/たちつてと/
y/ばびぶべぼ/はひふへほ/
y/ぱぴぷぺぽ/はひふへほ/
これを dakuon2seion.sed というファイルに保存し、処理対象となるファイルが foo.txt であれば・・・
$ sed -f dakuon2seion.sed foo.txt > r.txt
とすれば、r.txt に清音に変換した結果が出力されます。
sedによる変換ですが、Cygwin上で行うとうまくいかないようです。(Ubuntu8.04等で処理すると意図通り変換される。) 詳しく調べていないのですが、Cygwinでインストールできる sed コマンドはUTF-8に対応していないのかもしれません。
そこで、CygwinでもLinuxでも意図通り変換できるように、Javaで書き直したのが以下のコード。
public class DakuonToSeion {
private static final String dakuon="がぎぐげござじずぜぞだぢづでどばびぶべぼぱぴぷぺぽ";
private static final String seion ="かきくけこさしすせそたちつてとはひふへほはひふへほ";
public String conv(String s){
for(int i=0; i<dakuon.length(); i++){
String s1=dakuon.substring(i,i+1);
String s2=seion.substring(i,i+1);
s=s.replaceAll(s1,s2);
}
return s;
}
}
地味にひとつずつ変換...芸のないコードですが、とりあえず意図通り作動しているようです。