Boa tarde. Eu criei uma regex que deve coincidir com um nome com a primeira letra maiúscula e achei que a tinha escrito corretamente. Vocês poderiam me dizer qual regex eu poderia escrever para o padrão “Nome com a primeira letra maiúscula”? obrigado.
public class Validator
{
public static String validateName(String name)
{
String reg1 = "^([A-Z]{1})([a-z]{1,})$";
if(name.matches(reg1))
{
return name;
}
else {
return "";
}
}
}
Só uma pergunta, tendo em vista que o seu método só tem o intuito de identificar se o nome é válido ou não sem que haja alterações, porque não retornar um booleano ao invés de uma String vazia? Simples assim:
[code]public class Validator
{
public static boolean validateName(String name) {
if(null == name || name.trim().isEmpty)
return false;
char c = name.charAt(0);
return Character.isUpperCase(c);
}
private boolean primeiraLetraMaiuscula(String palavra) {
if(Character.isUpperCase(palavra.codePointAt(0)))return true;
return false;
}
[/quote]
Nice!.. Sem regex é divertido… Mas a duvida do “Edu Valente” é como validar nome via regex!..
um monte de gente está somente verificando se o primeiro caracter é maiusculo, não sei se isso deve ser feito mas pelo que eu intendi não deveriam ter caracteres especiais no resto da string por exemplo… o que esse método não analisaria.