我正在使用Pattern
中的javax.validation.constratins
验证来验证字段。字符串:
null
或为空OR我设法验证了七个数字,但我不知道如何进一步验证此字段可能为空。
@Getter
@Setter
public class MyRestRequest {
@Pattern(regexp = "\\d{7}")
private String someString;
}
因为Pattern null
被认为是有效的,所以问题归结为构造与空字符串或七位数字匹配的正则表达式。通常,对于空字符串,使用^$
(行的开头和结尾)。
在这种情况下,^|\\d{7}
和$|\\d{7}
甚至甚至是|\\d{7}
都可以,但是^$|\\d{7}
更典型:
@Pattern(regexp = "^$|\\d{7}")
public String someString;