Можно создать дубликат:
JAVA: check a string if there is a special character in itJava: проверить, если строка заканчивается или начинается с символа
Я пытаюсь создать метод, чтобы проверить, если начинается, пароль или заканчивается особый характер. Было несколько других проверок, которые мне удалось кодировать, но это кажется немного более сложным.
Я думаю, мне нужно использовать регулярное выражение, чтобы сделать это эффективно. Я уже создал метод, который проверяет наличие каких-либо специальных символов, но я не могу понять, как его модифицировать.
Pattern p = Pattern.compile("\\p{Punct}");
Matcher m = p.matcher(password);
boolean a = m.find();
if (!a)
System.out.println("Password must contain at least one special character!");
Согласно книге, которую я читал, что нужно использовать^и $ в шаблоне, чтобы проверить, если он начинается или заканчивается с особым характером. Могу ли я просто добавить оба утверждения к существующему шаблону или как мне его начать?
EDIT:
Хорошо, я думаю, что я получил, не регулярок метод работы:
for (int i = 0; i < password.length(); i++) {
if (SPECIAL_CHARACTERS.indexOf(password.charAt(i)) > 0)
specialCharSum++;
}
http://stackoverflow.com/questions/1795402/java-check-a-string-if-there-is-a-special-character-in-it –