ピンインにアポストロフィ

Pocket

北辞郎の検索結果におけるピンインの表記に手を入れました。音節間で母音が連続する場合や「n/ng」に母音が続く場合、一般的な辞書ではその間にアポストロフィを入れて区切ります。
これまで北辞郎ではこれができておらず、メンバーからご指摘をいただいたので(S様ありがとうございます)対応しました。北辞郎の内部ではピンインを「pin1yin1」のような簡易表記で扱っているため、この形式のピンインを与えると必要に応じてアポストロフィを加える関数を作ります(言語はPHP)。


function apostrophize($str) {
  $str = mb_ereg_replace("([aiueo]{1,1})([1-4]{1,1})([aoe]{1,1})", '\1\2\'\3', $str);
  $str = mb_ereg_replace("(ng?)([1-4]{1,1})([aoe]{1,1})", '\1\2\'\3', $str);
  return $str;
}

この関数に、apostrophize(“en1ai4”) のように引数を与えると「en1’ai4」が返ってきます。

例:恩爱 / 惊愕 / 西安

コメントする

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください