Как разрешить использование определенных слов с помощью javax.validation.constraints.Pattern?JAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Как разрешить использование определенных слов с помощью javax.validation.constraints.Pattern?

Сообщение Anonymous »

Я хотел бы использовать javax.validation.constraints.Pattern для проверки. В тексте не должно быть ни одного, ни другого.

Разрешенные примеры:
  • что-то
    < li>слово
НЕ разрешено:
  • нет
  • другие
Я пробую, но не уловил свою проблему. Что-то вроде:

@NotNull
@Pattern(regexp = "(^none)")
String countryValue;


Спасибо за подсказку.

ОБНОВЛЕНИЕ:
Как Аниш сказано с помощью онлайн-валидатора регулярных выражений, регулярное выражение ^(?!others|none) должно быть правильным. Но Spring-MVC по-прежнему отказывается. Нужно ли использовать специальный синтаксис? Я даю больше кода, чтобы получить более полную картину:

Контроллер:

@PostMapping
public String post(@ModelAttribute @Valid DisclaimerFormDto disclaimerForm, BindingResult errors, ModelMap modelMap) {
if(errors.hasErrors()) {
errors.getAllErrors().forEach(System.out::println);
return "redirect:/disclaimer";
}
return "redirect:/product";
}


FormDto (с изменениями, упомянутыми Анишем):

@Data
@ToString
public class DisclaimerFormDto {
@NotNull
@Pattern(regexp = "^(?!others|none)")
String countryValue;
}


Вывод результата привязки:

Field error in object 'disclaimerFormDto' on field 'countryValue': rejected value [none]; codes [Pattern.disclaimerFormDto.countryValue,Pattern.countryValue,Pattern.java.lang.String,Pattern]; arguments [org.springframework.context.support.DefaultMessageSourceResolvable: codes [disclaimerFormDto.countryValue,countryValue]; arguments []; default message [countryValue],[Ljavax.validation.constraints.Pattern$Flag;@59374db6,^(?!(none|others)$).*$]; default message [muss auf Ausdruck "^(?!(none|others)$).*$" passen]


Подробнее здесь: https://stackoverflow.com/questions/584 ... ts-pattern
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»