Ich muss Validierung wie folgt zu erreichen.Pan Card Validierung in Android
sollte genau 5 Buchstaben in Large Caps, gefolgt von genau 4 Ziffern, gefolgt von 1 Brief in Large Caps (Beispiel - KLMNO5661P)
Ich muss Validierung wie folgt zu erreichen.Pan Card Validierung in Android
sollte genau 5 Buchstaben in Large Caps, gefolgt von genau 4 Ziffern, gefolgt von 1 Brief in Large Caps (Beispiel - KLMNO5661P)
können Sie REGEX (Regular Expression) Verwenden Sie das Format
String s = "ABCDE1234F"; // get your editext value here
Pattern pattern = Pattern.compile("[A-Z]{5}[0-9]{4}[A-Z]{1}");
Matcher matcher = pattern.matcher(s);
// Check if pattern matches
if (matcher.matches()) {
Log.i("Matching","Yes");
}
[A-Z]{5} - match five literals which can be A to Z
[0-9]{4} - followed by 4 numbers 0 to 9
[A-Z]{1} - followed by one literal which can A to Z
zu überprüfen
Versuchen Sie, diese
final String pan_pattern = "(([A-Za-z]{5})([0-9]{4})([a-zA-Z]))";
checkpan.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Pattern r = Pattern.compile(pan_pattern);
if (!regex_matcher(r, pan_number.getText().toString())) {
error = "Invalid PAN number";
}
}
});
regex_matcher
private boolean regex_matcher(Pattern pattern, String string) {
Matcher m = pattern.matcher(string);
return m.find() && (m.group(0) != null);
}
versuchen diese
public String validateNewPancard(String pan){
StringBuilder retVal = new StringBuilder();
if(pan.length() < 1){
return "Empty fields";
}
if (pan != null) {
boolean hasUppercase = !pan.equals(pan.toLowerCase());
boolean hasLowercase = !pan.equals(pan.toUpperCase());
boolean hasNumber = pan.matches(".*\\d.*");
boolean noSpecialChar = pan.matches("[a-zA-Z0-9 ]*");
if (hasUppercase && hasLowercase && hasNumber && pan.length) {
return "success";
}
if (pan.length() < 5) {
retVal.append("Pancard is too short. Needs to have 5 characters <br>");
}
if (!hasUppercase) {
retVal.append("Pancard needs an upper case ");
}
if (!hasLowercase) {
retVal.append("Pancard needs a lowercase");
}
if (!hasNumber) {
retVal.append("Pancard needs a number");
}
}else{
retVal.append("Pancard don't match");
}
}else{
return "Pancard Null";
}
if(retVal.length() == 0){
retVal.append("Success");
}
return retVal.toString();
}