SoundX

式エディタ > 関数ディレクトリ

 

文字の読み方(発音)の比較

スペルは異なるものの発音が似ている2 つの文字列の発音を比較できます。

構文:

SoundX(文字列)

パラメータ:

文字列 … 発音をチェックする文字列

戻り値:

4文字からなる値

例:

SoundX('John Doe')=SoundX('Jhn De')

 

「True」 が返ります。

参考:

文字列の発音値は以下のように計算されます。

  • 先頭のスペースを無視します。

  • 文字:A,E,I,O,U,Y,H,W を無視します。

  • 大文字と小文字の区別を無視します。

  • 最初の(スペースを除いた)文字を大文字に変換して、戻り値の先頭とします。

  • B,F,P,V を1 に変換します。

  • C,G,J,K,Q,S,X,Z を2 に変換します。

  • D,T を3 に変換します。

  • L を4 に変換します。

  • M,N を5 に変換します。

  • R を6 に変換します。

  • 変換された数値が同じ値で連続する場合は、2 番目を削除します。

  • 数値部分が3 桁より短い場合は、0 で埋めます。

  • 数値部分が3 桁より長い場合は3 桁で切り捨てます。

注意事項:

  • この関数の戻り値は、4 文字で構成される値です。例えば、'John Doe'、'Jhn De'、'JOhN Deo'はいずれも、'J530'が返ります。また、'Steve'では'S310'が、'Svte'では'S130 が返ります。このように、SoundX 関数では4 文字の値が返るので、その戻り値を条件式で比較すると、文字列の発音の相違をチェックできます。また、SoundX 関数の戻り値はファイルに保存することもできますし、インデックスを設定することで直接アクセスすることもできます。

  • 日本語文字列(DBCSコード)では動作しません。