私はこの上パスワード検証を追加したいが、それを得ることに問題を取得し、私はこれらの少なくとも一部が含まパスワードパターンたい:文字 Androidでパスワードパターンによるパスワード検証を実装するにはどうすればよいですか?
- 数を
- 小文字
- 大文字
しかし、私はこれを達成することができません、助けてください。
public class SignUp extends MainActivity {
private EditText et_name, et_email, et_password, et_cpassword;
private String name, email, password, cpassword;
Button signupbtn;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.sign_up_form);
et_name = (EditText) findViewById(R.id.name);
et_email = (EditText) findViewById(R.id.Email);
et_password = (EditText) findViewById(R.id.Password);
et_cpassword = (EditText) findViewById(R.id.Confirm_Password);
signupbtn = (Button) findViewById(R.id.Signbtn);
signupbtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
register();
}
});
}
public void register() {
initialise();
if (!validate()) {
Toast.makeText(this, "Sign up Failed", Toast.LENGTH_SHORT).show();
} else {
onSignUpSuccess();
}
}
public void onSignUpSuccess() {
Intent intent = new Intent(SignUp.this, HomePage.class);
startActivity(intent);
finish();
}
public boolean validate() {
boolean valid = true;
if (name.isEmpty() || name.length() > 32) {
et_name.setError("please enter valid name");
valid = false;
}
if (email.isEmpty() || !Patterns.EMAIL_ADDRESS.matcher(email).matches()) {
et_email.setError("please enter valid Email");
valid = false;
}
if (password.isEmpty())
et_password.setError("please enter a valid password");
return valid;
}
public void initialise(){
name = et_name.getText().toString().trim();
email = et_email.getText().toString().trim();
password = et_password.getText().toString().trim();
cpassword = et_cpassword.getText().toString().trim();
}
}
私は 'の場合(password.isEmpty()' –
それは(同じ行に '場合(password.isEmpty ||!Pattern.matches(パスワード、「^すべきですか?=この文 後にこれを使用する必要があります(?=。* [AZ])(?=。* [@#$%^&+ =])(?= \\ S + $) 。{4、} $ "){ et_password.setError("有効なパスワードを入力してください "); valid = false; } –