Fazer a parte principal de um programa em Java, o mais completo possível para:
ler uma cadeia de caracteres (string) do teclado;
supor que a cadeia representara uma palavra;
dizer se a cadeia de caracteres é uma palavra valida ( se contem apenas letras), ou não, com uma verificação adicional: se a primeira letra for maiúscula ela devera ser única ou a palavra inteira devera estar toda em maiúscula.
isso que o prof quer, mas eu nao consigo ver se a cadeia contem somente letras. nao estou conseguindo escrever corretamente o teste
// definir dados
String s;
char x;
s = IO.readString ( "Entrar com uma cadeia de caracteres:" );
IO.println ( "Valor lido:" + s);
if ( (s.charAt >= 'a' && s.charAt <= 'z') || ( s.charAt >= 'A' && s.charAt <= 'Z') );
{
IO.println ( "Contem apenas letras" );
} else
{IO.println ( "A cadeia apresenta outros caracteres alem de letras" );}
está função pega a palavra passada, tira tudo que não é letra… e se no final as duas forem iguais… então só continha letras na palavra… então retornará true… caso contrário, retornará false!
dizer se a cadeia de caracteres é uma palavra valida ( se contem apenas letras), ou não, com uma verificação adicional: se a primeira letra for maiúscula ela devera ser única ou a palavra inteira devera estar toda em maiúscula.
estava fazendo a seugnda parte e ficou uma duvida…
se a primeira ser maiuscula… ou tudo deve ser maiusculo, ou tdo o resto da palavra deve estar em minusculo? é isso?
fabiozanardi, estou dando o algoritmo pronto pois gosto de fazer e serve de aprendizado pra mim.
E estou dando a resposta pra ele, sim, prontinha… pois azar é o dele que não vai estar desenvolvendo algoritmos simples assim…
eu estou aprendendo igual!
clarel.filho
é assim a segunda parte
se a palavra tiver a primeira letra maiúscula nao pode ter mais nenhuma maiúscula ex: Teste, so pode ter o T,
se nao ela tera q estar toda em maiúscula ex TESTE, o programa nao pode funcionar com a palavra assim TesTE. entendeu?
Existe alguma documentação que mostre que o “\d” e o “\w” remove o que não é letra? Existem outras expressões regulares , como “\p” ou sei lá, algum outro, que faça outra coisa?
clarel.filho
ah entendi usando as funções pra ver a validade.
Mas aproveitando me tire uma duvida quase boba que eu troco
eu tenho uma string s, e quero passar pra char, como fica s.charAt?
Documentação eu nunca achei, mas achei isto que é muito bom!
Uso esse tipo de expressões em muitas outras funções minhas também, que são um pouco particulares
[quote=clarel.filho]Documentação eu nunca achei, mas achei isto que é muito bom!
Uso esse tipo de expressões em muitas outras funções minhas também, que são um pouco particulares
E sobre o char, da uma olhadinha no meu exemplo abaixo!
String teste = “Ooo”;
char s[] = teste.toCharArray();
parte editada:
o chatAt você passara somente a letra na posição que você informar… começando em “0”, claro![/quote]
Vlw por este ;D.
Este toCharArray eu conheço tb. Utilizo bastante, o que eu não conhecia mesmo eram essas expressões regulares no replace.
Eu quando precisa fazer isso de tirar os numeros da string, eu convertia para um vetor de char, percorria este vetor e em cada posição tentava converter o char para int se desse certo eu tirava ele da String.