preciso saber se uma string contem pelo menos uma letra ou pelo menos um numero
o que ponho dentro dos parenteses do compile?
Pattern p = Pattern.compile ();
Matcher m = p.matcher(senha);
if(!m.find()){
carlavb,
se voce precisa identificar se na string existe apenas alguma letra ou algum número, vc pode usar o método contains da api:
String aaa = "leo";
boolean ddd = aaa.contains("e"); //true
boolean ccc = aaa.contains("z"); //false
agora se vc precisa fazer algo mais genérico, vc pode usar expressão regular usando o método matches e passando uma regex
boolean eee = aaa.matches("\w*"); //true
com o \w* ele irá aceitar caracteres alfanuméricos, porém irá barrar -,.@#$$, etc…
e o * na regex é para validar tanto apenas 1 caracterer como infinitos…
[]'ssss
nao ta adiantando…eu li que tem que ter um +…
mas eu nao quero saber se existe uma letra especifica, e sim Se tem No MINIMO uma letra e um numero
ex : 1qqqqqqqqqqq
qqqqqqqqq1
qqqqqqq2qqqqqqqq2
que tal então essas regex pra vc:
boolean eee = aaa.matches("[a-zA-Z]{1,}\w*\d{1,}"); //começa com letra, pode ter ou nao numero no meio e tem q terminar com numero
boolean fff = aaa.matches("\d{1,}\w*[a-zA-Z]{1,}"); //começa com numero, pdoe ter letra ou numero no meio e tem q terminar com letra
ajudam?
a instrução {1,} numa regex fala que tal elemento tem q aparecer pelo menos uma vez ou infinitas vezes…
Tai Carla x)
String senha;
public String testarNome(String senha) {
this.senha = senha;
boolean b = senha.matches("[a-zA-Z]{1,}\d{1,}");
if(b==true){
System.out.println("Senha Aceita");
} else System.out.println("Digite Pelo menos uma Letra e um Numero =D");
return senha;
}
nenhum desses funciona…
nao funciona para QQ12QQQQQ
[0-9A-Za-z]+
Acho que esse funciona msm.
Você disse [quote=carlavb]preciso saber se uma string contem pelo menos uma letra ou pelo menos um numero
o que ponho dentro dos parenteses do compile? [/quote]
Essa expressão regular que citei acima atende isso.Ocorrência de pelo menos uma letra OU pelo menos um número.
Esse do Antonio Funciona Sim