Java에서 다른 단어에 음성 표기를 사용하고 있습니다. 나는 Soundex를 사용했으나 너무 조잡했다. 나는 Metaphone으로 전환하고 더 나은 것을 깨달았다. 그러나, 나는 그것을 엄격하게 테스트했을 때. 이상한 행동을 발견 했어. 나는 그것이 메타 폰이 작동하는 방식인지 아니면 잘못된 방식으로 사용하고 있는지를 물어야했다. 고급의 작품을 예를 다음에서 : -Metaphone 알고리즘에서 예기치 않은 결과가 발생했습니다.
Metaphone meta = new Metaphone();
if (meta.isMetaphoneEqual("cricket","criket")) System.out.prinlnt("Match 1");
if (meta.isMetaphoneEqual("cricket","criketgame")) System.out.prinlnt("Match 2");
이것은
Match 1
Mathc 2
지금 "크리켓" "criket"하지만 어떻게 온 "크리켓"같은 소리와 "criketgame"않습니다 인쇄 것 같다. 어떤 사람이 이것을 설명한다면. 큰 도움이 될 것입니다.
우리는 속담을 가르쳤다. "외모는 사기성이있다" – jaykio77