Как проверить, если пользователь набрал символ в Java? - PullRequest
0 голосов
/ 01 июня 2018

Я подхожу к этой проблеме, когда у меня есть поле ввода, и внутри моего поля ввода я проверяю, не вставляет ли пользователь пробелы и символ "@".Тем не менее, я написал код для проверки пробелов, но не смог включить код для проверки символа «@».Я попытался с помощью этого: && value.contains("@"), и изменить Object value на String value, по-прежнему не работает.Может ли кто-нибудь показать мне, как проверить наличие символа «@» перед моим кодом ниже.Спасибо!

Вот мой код:

            public void validate(FacesContext context, UIComponent component,
            Object value) throws ValidatorException {
        //Checking  if the user has typed only blank spaces and  "@" symbol. 

        //&& value.contains("@")
        if (value.toString().trim().isEmpty()) {
            FacesMessage msg
                    = new FacesMessage("Invalid input provided",
                            "Enter a valid address without @ Symbol and Spaces.");
            msg.setSeverity(FacesMessage.SEVERITY_ERROR);
            throw new ValidatorException(msg);

        }
    } 

Ответы [ 3 ]

0 голосов
/ 01 июня 2018

Вы могли бы сделать

if (!value.toString().matches(".*[ @].*")) {
   // throw exception
0 голосов
/ 01 июня 2018

попробуйте эту строку:

 if(!value.toString().matches("[^a-z A-Z0-9]"))
0 голосов
/ 01 июня 2018

Чек

if (!value.toString().contains(" ") && !value.toString().contains("@"))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...