
फंक्शन ब्लॉक SOUNDEX एक स्ट्रिंग के ध्वनि समानता का गणना करता है।
साउंडेक्स मानों की विशेषता यह है कि समान उच्चारित शब्दों को वही साउंडेक्स मान उत्पन्न करते हैं। इसे डेटाबेस में खोजने के लिए उपयोग किया जा सकता है, जब आप उच्चारण जानते हैं लेकिन सही वर्तनी नहीं। फ़ंक्शन साउंडेक्स एक चार-आकार का स्ट्रिंग वापस देता है, जो एक अक्षर से शुरू होता है।
इनपुट गणना करने के लिए स्ट्रिंग को परिभाषित करता है।
साउंडेक्स कोड के साथ एक स्ट्रिंग वापस देता है।
हर साउंडेक्स कोड में एक अक्षर होता है जिसके बाद तीन अंक होते हैं, जैसे A532 Antcas के लिए। अगर कोड करने वाले शब्द में इतनी अधिक अक्षरें होती हैं कि आप और अधिक अंकों का उत्पादन कर सकते थे, तो तीसरे अंक के बाद रोक दें। अगर शब्द में कम अक्षरें होती हैं, तो अंतिम अंकों को शून्य से भर दें। इसलिए एशियाई नाम ली को L000 के रूप में कोड किया जाता है।
| अंक | प्रतिनिधित्व करने वाले अक्षर |
|---|---|
| 1 | B, F, P, V |
| 2 | C, G, J, K, Q, S, X, Z |
| 3 | D, T |
| 4 | L |
| 5 | M, N |
| 6 | R |
स्वर A, E, I, O और U और व्यंजन H, W और Y को छोड़कर, पहले अक्षर के अलावा अनदेखा किया जाना चाहिए। इसके अतिरिक्त जर्मन भाषा के लिए परिभाषित किया जा सकता है: डायरेक्ट्स Ä, Ö और Ü को अनदेखा किया जाना चाहिए, "शार्प एस" ß को एक साधारण S के रूप में कोड किया जाता है।
अगर मूल स्ट्रिंग में कई लगातार अक्षरें हैं जिनके पास वही साउंडेक्स कोड होता है, तो परिणाम में यह केवल एक बार दिखाई देता है, abfx से लगभग A120 (a रहता है, क्योंकि पहला अक्षर, b और f दोनों कोड 1 देते हैं, x कोड 2 देता है, अंत में एक शून्य जोड़ा जाता है ताकि चार अक्षर प्राप्त हो सके)।
साउंडेक्स विधि के व्यावहारिक अनुप्रयोग में मुख्य रूप से दो बिंदुओं पर आलोचना की जाती है: पहला यह है कि यह बहुत अधिक अंग्रेजी भाषा पर केंद्रित है, और दूसरा यह है कि यह केवल एक बहुत ही रूढ़िवादी विश्लेषण प्रदान करता है।
हालांकि, यह नोट करना महत्वपूर्ण है कि प्रस्तुत एल्गोरिदम को फोनेटिक खोज के लिए सबसे अधिक बार लागू किया जाने वाला है। इसमें निश्चित रूप से योगदान दिया होगा कि डेटाबेस Oracle के लिए एक संबंधित PL/SQL स्टैंडर्ड कमांड बहुत पहले ही लागू की गई थी।