Como separar uma palavra em uma string em silabas
4 participantes
Página 1 de 1
Como separar uma palavra em uma string em silabas
então eu estou fazendo um app pra ajudas as crianças a aprenderem a ler so q pra isso eu preciso separar as palavra em silabas
tipo eu vou receber uma string e preciso retorna uma lista com as silabas
ex:
vou receber um string com a palavra "vassoura"
e vou ter q retorna uma lista ["vas","sou","ra"]
eu nem sei por onde começa, alguém pode me ajuda?
tipo eu vou receber uma string e preciso retorna uma lista com as silabas
ex:
vou receber um string com a palavra "vassoura"
e vou ter q retorna uma lista ["vas","sou","ra"]
eu nem sei por onde começa, alguém pode me ajuda?
Socates- Membro
- PONTOS : 2403
REPUTAÇÃO : 5
Idade : 25
Respeito as regras :
Re: Como separar uma palavra em uma string em silabas
Existe varias formas de fazer, a que você quer é pra qualquer palavra? tipo a criança escreve uma palavra e retorna as silabas dela ou você da uma lista de opções e a palavra que ela clicar retorna as silabas da palavra cujo ela clicou?
nibirou- MembroAvançado
- PONTOS : 2073
REPUTAÇÃO : 15
Áreas de atuação : C#,C++,produção de audio
Respeito as regras :
Re: Como separar uma palavra em uma string em silabas
nibirou escreveu:Existe varias formas de fazer, a que você quer é pra qualquer palavra? tipo a criança escreve uma palavra e retorna as silabas dela ou você da uma lista de opções e a palavra que ela clicar retorna as silabas da palavra cujo ela clicou?
no caso é pra qualquer palavra q a criança escreva
Socates- Membro
- PONTOS : 2403
REPUTAÇÃO : 5
Idade : 25
Respeito as regras :
Re: Como separar uma palavra em uma string em silabas
Já que não sabe por onde começar vou dar um norte inicial, e então a implementação fica a seu cargo.
Obviamente você vai precisar saber as regras gramaticais para separação de sílabas, acredito que já saiba, mas é importante dar uma revisada para criar o app de forma correta: https://educacao.uol.com.br/disciplinas/portugues/separacao-de-silabas-para-que-serve-e-regras.htm
Com as regras em mente, você vai criar as possibilidades das sílabas que pode ser separadas, por exemplo:
Ba-la.
Nesse caso a regras é: (Considere C consoante e V vogal)
CV separa.
Então essa regra serviria para outras várias palavras:
Dado, Karatê, Marina, paralelepípedo, e etc.
Agora, para saber quais são as entradas da string, e também criar regras específicas, como por exemplo, a palavra Carro ( a regra aqui seria C ou V, V, RR/SS, V) você vai precisar utilizar um conceito das linguagens de programação chamado Regex (Ou expressões regulares).
Em resumo, o Regex te possibilita encontrar padrões numa string (conjunto de caracteres) e criar condicionais caso a string "combine" com o padrão da expressão, por exemplo, fazer o comando da regra CV seria simples:
No primeiro comando temos as letras apenas consoantes, eliminando as vogais, e depois apenas as vogais.
Claro que existem formas mais complexas para escrever essa Regex, adicionado os acentos para vogais, eliminando o case sensitive e etc... Mas foi só para exemplificar.
Então no caso do padrão acima, um laço vai percorrer a string e se ela perceber o padrão acima (CV) ele separa a palavra.
Enfim, essa seria a ideia inicial.
Caso queria saber mais sobre Regex, aqui eis um link:
http://www.linhadecodigo.com.br/artigo/3362/expressoes-regulares-em-csharp-resolvendo-problemas-de-identificacao-de-textos.aspx
Obviamente você vai precisar saber as regras gramaticais para separação de sílabas, acredito que já saiba, mas é importante dar uma revisada para criar o app de forma correta: https://educacao.uol.com.br/disciplinas/portugues/separacao-de-silabas-para-que-serve-e-regras.htm
Com as regras em mente, você vai criar as possibilidades das sílabas que pode ser separadas, por exemplo:
Ba-la.
Nesse caso a regras é: (Considere C consoante e V vogal)
CV separa.
Então essa regra serviria para outras várias palavras:
Dado, Karatê, Marina, paralelepípedo, e etc.
Agora, para saber quais são as entradas da string, e também criar regras específicas, como por exemplo, a palavra Carro ( a regra aqui seria C ou V, V, RR/SS, V) você vai precisar utilizar um conceito das linguagens de programação chamado Regex (Ou expressões regulares).
Em resumo, o Regex te possibilita encontrar padrões numa string (conjunto de caracteres) e criar condicionais caso a string "combine" com o padrão da expressão, por exemplo, fazer o comando da regra CV seria simples:
- Código:
/[b-df-hj-np-tv-z]+/[aeiou+/]
No primeiro comando temos as letras apenas consoantes, eliminando as vogais, e depois apenas as vogais.
Claro que existem formas mais complexas para escrever essa Regex, adicionado os acentos para vogais, eliminando o case sensitive e etc... Mas foi só para exemplificar.
Então no caso do padrão acima, um laço vai percorrer a string e se ela perceber o padrão acima (CV) ele separa a palavra.
Enfim, essa seria a ideia inicial.
Caso queria saber mais sobre Regex, aqui eis um link:
http://www.linhadecodigo.com.br/artigo/3362/expressoes-regulares-em-csharp-resolvendo-problemas-de-identificacao-de-textos.aspx
Re: Como separar uma palavra em uma string em silabas
É possível que exista alguma biblioteca que faça isso, só pesquisando...
Eu utilizaria um dicionário, pois lá geralmente tem as palavras separadas por sílabas, criaria um banco de dados pra armazenar e checaria se a palavra digitada consta no dicionário, se houvesse uma correspondência, eu retornaria as sílabas que a compõe.
Eu utilizaria um dicionário, pois lá geralmente tem as palavras separadas por sílabas, criaria um banco de dados pra armazenar e checaria se a palavra digitada consta no dicionário, se houvesse uma correspondência, eu retornaria as sílabas que a compõe.
Fagner- Moderador
- PONTOS : 4442
REPUTAÇÃO : 667
Áreas de atuação : Modelagem 3D, Programação.
Respeito as regras :
Tópicos semelhantes
» Tem como achar uma Letra/palavra dentro de uma string?
» (UNITY 3D) Mesh Splitter - Como separar uma Mesh em multiplos Game Objects?
» Como separar um audio na unity ?
» Como converter string em Enum
» Como usar GetComponent com string como parâmetro
» (UNITY 3D) Mesh Splitter - Como separar uma Mesh em multiplos Game Objects?
» Como separar um audio na unity ?
» Como converter string em Enum
» Como usar GetComponent com string como parâmetro
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos