Я работаю над проектом, в котором пользователь разрешается вводить только пароль с буквами , алфавитами и специальными символами, такими как (@. # $%^& _- & *) один в редакторе. Я пробовал различные методы. ** Примечание: пространство строго ограниченОграничить специальные символы в андроиде пароль EditText
Метод 1:
настройки цифры в макете следующим образом
Android: цифры = "0,1,2,3,4,5, 6,7,8,9, * @ # $% _- \ ^. & < qwertzuiopasdfghjklyxcvbnmABCDEFGHIJKLMNOPQRSTUVWXYZ»
Этот метод работает хорошо, но я мог бы в состоянии напечатать скобки '(', точкой с запятой ';', и я не мог набрать слэш '\' (который я добавил в цифры теге)
Способ 2:
Стараясь регулярное выражение со следующими метод
public static boolean limitPasswordCharacters(String about){
// UserName Validation Pattern String
final Pattern USER_NAME_PATTERN = Pattern.compile("^[[email protected]#$%^&*_&\\]+$");
if(USER_NAME_PATTERN.matcher(about).matches()){
return true;
}
return false;
}
Но, к сожалению, gettting исключением, как
11-17 16:18:11.155: E/AndroidRuntime(15877): java.util.regex.PatternSyntaxException: Missing closing bracket in character class near index 22:
11-17 16:18:11.155: E/AndroidRuntime(15877): [[email protected]#$%^&*_&\]
благодаря Авинаш позвольте мне проверить и сказать и. – Chandru
уверен, не торопитесь. –
avinash все работает, но слэш (\) не работает в regex – Chandru