String Fonética

programa em ciências da computação

Em ciências da computação String fonética é um programa na forma de uma função usado para indexar nomes através de som, como pronunciado em uma determinada língua. É usado para casos onde existam palavras homófonas de forma que elas possam ser emparelhadas apesar de diferenças secundárias na soletração.

Um pouco de português editar

Fonemas são as menores unidades sonoras da fala. São os sons elementares e distintivos que, articulados e combinados, formam as sílabas, os vocábulos e a teia da frase, na comunicação oral.
Funcionam como elementos distintivos ou diferenciadores das palavras, porque são capazes de diferenciar umas de outras, conforme se observa, por exemplo, nas seqüências: mala, mola, mula; gato, mato, pato, rato; mal, mar, mas.

Quando proferimos a palavra aflito, por exemplo, emitimos três sílabas e seis fonemas: a – fli – to. Percebemos que uma sílaba pode haver um ou mais fonemas.

No sistema fonético do português do Brasil há, aproximadamente, 33 fonemas.

Classificação dos Fonemas editar

É importante não confundir letra com fonema. Fonema é o som, letra é o sinal gráfico que representa o som.

O ideal seria que cada fonema correspondesse uma só letra, e vice-versa, mas infelizmente isso não acontece. É que o nosso sistema ortográfico não é rigorosamente fonético, mas ainda está preso à origem das palavras. Escreve-se, por exemplo, exame, em vez de ezame. Assim, por força da tradição etimológica, podemos observar, na figuração dos fonemas portugueses, as seguintes imperfeições:

1) A mesma letra pode representar fonemas diferentes: eXame, Xale, próXimo, seXo; Cola, Cera.
2) O mesmo fonema pode ser figurado por letras diferentes: caSa, eXílio, coZinha; tiGela, laJe.
3) Um fonema pode ser representado pelo grupo de duas letras (dígrafos): maCHado, muLHer, uNHa, miSSa, caRRo.
4) A letra X pode representar, simultaneamente, dois fonemas diferentes: táXi (táCSi), fiXo (fiCSo), tóraX (tóraCS), heXacampeão (eGZacãpeãu).
5) Há letras que, às vezes, não representam fonemas; tão somente funcionam como notações léxicas: caMpo (cãpo), reNda (r~eda), regUe (U insonoro, para não se proferir reJe).
6) Usam-se letras simplesmente decorativas: não representam fonemas nem funcionam como notações léxicas: Hotel (otel), diScípulo (dicípulo), eXceção (eceção), qUina (qina).
7) Há fonemas que, em certos casos, não se representam graficamente: bem (bêI), batem (bát~eI, falam (fálãU).

Figuração dos Fonemas editar

Os fonemas da língua portuguesa classificam-se em vogais, semivogais e consoantes.
a) Vogais são fonemas sonoros , ou sons laríngeos, que chegam livremente ao exterior sem fazer ruído.
b) Semivogais são os fonemas /i/ e /u/ átonos que se unem a um a vogal, formando com esta uma só sílaba: vai – andei – ouro água.
c) Consoantes são os ruídos provenientes da resistência que os órgãos bucais opõem à corrente de ar.

Na língua portuguesa a vogal é o elemento básico, suficiente e indispensável para a formação da sílaba. As consoantes e as semivogais são fonemas dependentes: ó podem formar sílaba com o concurso das vogais.

História editar

O primeiro caso em que foi necessário pesquisar palavras homófonas surgiu por volta do início do século XX, onde se precisava rastrear a cidade e os nomes de família de imigrantes não americanos durante o censo entre 1918 a 1920.

Robert C. Russell, teve a ideia de ordenar palavras pela forma como soam e não em ordem alfabética.

Soundex editar

A partir de então surgiram diversas funções para realizar esse tipo de pesquisa com algumas mudanças. A mais conhecida é a função Soundex, uma variação do algoritmo criado por Russel.

A codificação de uma palavra por meio desse algoritmo consiste em uma nova palavra onde se mantém a primeira letra acrescida de outros 3 números. Vogais são suprimidas, e consoantes com sons iguais recebem o mesmo número.

Valor Consoantes
1 B, F, P, V
2 C, G, J, K, Q, S, X, Z
3 D,T
4 L
5 M,N
6 R


Apenas os 4 dígitos são usados, o restante é suprimido. Quando existem duas letras iguais, uma do lado da outra, mantém-se apenas uma referência, caso a palavra tenha menos que 4 letras, o restante é acrescido de zero.
Exemplo:

PALAVRA SOUNDEX
DANILO D540
MARILENE M645

Existem variações desse algoritmo. Um bem conhecido é o [“Reverse Soundex”], que faz o processo inverso, ele mantém a última letra da palavra e as 3 últimas consoantes.

Esse algoritmo é tão funcional e útil que se tornou parte de alguns programas importantes, como o SQL Server e o Oracle. Algumas linguagens. como PHP, possuem também essa função, nas demais podemos implementá-las sem muitos problemas.

Em 1990, Lawrence Philips desenvolveu para o inglês o Metaphone, uma melhoria do algoritmo Soundex. Posteriormente o algoritmo foi adaptado para o Português do Brasil[1]. Em 2000, o mesmo autor desenvolveu o Double Metaphone. Double, porque ele retorna duas letras ao invés de apenas uma. Esse algoritmo foi implementado em C++.

Referências