Regex Spring验证:正则表达式注释不起作用
执行控制器方法时,我收到以下日志: 对象:[字段“名称”上的对象“目录”中的字段错误:拒绝值[safasf];代码[Pattern.catalog.name,Pattern.java.lang.String,Pattern];参数[org.springframework.context.support.DefaultMessageSourceResolvable:代码[catalog.name,name];参数[];默认消息[name],[Ljavax.validation.constraints.Pattern$Flag;@5f32f731,org.springframework.validation.beanvalidation.SpringValidatorAdapter$ResolvableAttribute@2180fe7e];默认消息[muss auf Ausdruck”[A-Za-z]“passen]] Regex:Regex Spring验证:正则表达式注释不起作用,regex,validation,spring-boot,Regex,Validation,Spring Boot,执行控制器方法时,我收到以下日志: 对象:[字段“名称”上的对象“目录”中的字段错误:拒绝值[safasf];代码[Pattern.catalog.name,Pattern.java.lang.String,Pattern];参数[org.springframework.context.support.DefaultMessageSourceResolvable:代码[catalog.name,name];参数[];默认消息[name],[Ljavax.validation.constraint
[A-Za-z]
输入:safasf
守则:
...
@NotNull
@Size(min=1, max=8)
@Pattern(regexp = "[A-Za-z]")
private String name;
...
控制员:
@PostMapping(ADD_CATALOG)
public String addCatalog(@Valid @ModelAttribute Catalog catalog, BindingResult result){
if(result.hasErrors()){
logAction("addCatalog", "Validation of "+catalog.getName()+" failed: ", result.getAllErrors().toString());
return "redirect:/catalog/addCatalog/";
}
catalogProviderComponent.addOrUpdateCatalogEntity(catalogComponent.catalog2catalogEntity(catalog));
logAction("addCatalog","catalog", catalog);
return "redirect:/catalog/addCatalog/";
}
当我进入
regex101.com
时,一切似乎都很好。除此之外,我尝试了一些正则表达式,但没有一个能正常工作。要允许使用一个或多个小写或大写字母,您应该在模式的末尾附加+
:
@NotNull
@Size(min=1, max=8)
@Pattern(regexp = "[A-Za-z]+")
private String name;
要允许使用一个或多个小写或大写字母,应将
+
附加到模式的末尾:
@NotNull
@Size(min=1, max=8)
@Pattern(regexp = "[A-Za-z]+")
private String name;
什么。我有1000000%的把握我试过几次,包括你的。谢谢…:facepalm:Regex是一个很多开发人员,甚至是高年级的开发人员都很少使用的领域。这也适用于Xpath和SQL。很高兴为你服务。什么。我有1000000%的把握我试过几次,包括你的。谢谢s、 ..:facepalm:Regex是一个许多开发人员,甚至是年长的开发人员都没有使用过的领域。这同样适用于Xpath和SQL。很高兴为您服务。