2016-04-17 16 views
1

Sample code formatFirstNameのフィールド検証

みなさん、こんにちは、私はそれをテストすると、ファーストネームは常にエラーを示しているようだ、最初の名前フィールドはしかし、数字や特殊文字が含まれているかどうかをチェックする検証用のコード行を追加しました 誰でも助けてください。本当にありがとう!

(!isNetworkAvailable()) { 
     showSweetDialog(AppConstants.ERR_CONNECTION, "error", false, null, null); 
    } else if (firstName.isEmpty()) { 
     setError(etFirstName, AppConstants.WARN_FIELD_REQUIRED); 
    } 

    else if(!firstName.matches("[a-zA-Z]")){ 
     setError(etFirstName, AppConstants.WARN_FIELD_REQUIRED); 
    } 


else if (lastName.isEmpty()) { 
     setError(etLastName, AppConstants.WARN_FIELD_REQUIRED); 
    } else if (mobile.isEmpty()) { 
     setError(etMobile, AppConstants.WARN_FIELD_REQUIRED); 
    } else if (email.isEmpty()) { 
     setError(etEmail, AppConstants.WARN_FIELD_REQUIRED); 
    } else if (password.isEmpty()) { 
     setError(etPassword, AppConstants.WARN_FIELD_REQUIRED); 
    } else if (!Patterns.EMAIL_ADDRESS.matcher(email).matches()) { 
     setError(etEmail, AppConstants.WARN_INVALID_EMAIL_FORMAT); 
    } else if (address.isEmpty()) { 
     setError(etAddress, AppConstants.WARN_FIELD_REQUIRED); 
    } else { 

答えて

0

ここで、文字列の先頭と末尾には、^と$を追加します。そのようにそれを試してみてください。

else if(!firstName.matches("^[A-Za-z]+$")){ 
    setError(etFirstName, AppConstants.WARN_FIELD_REQUIRED); 
} 

意味:

^   beginning of the string, 
[A-Za-z] search for alphabetical chars either they are CAPITALS or not 
+   string contains at least one alphabetical char 
$   end of the string 

を今、あなたは最初の名前は、いくつかの特別なまたは数値文字が含まれている場合のみ、エラーメッセージを取得する必要があります。

+0

[A-Za-z]の代わりに最初の文字のみを大文字にする場合は、[A-Z] [a-z]を使用してください。 – Matcoil

+0

問題は解決しました。ありがとうございます :) –

関連する問題