regex模式允许字母数字和特殊字符(,-\s)进行大小检查

regex模式允许字母数字和特殊字符(,-\s)进行大小检查,regex,validation,Regex,Validation,我想检查只包含字母数字和少数特殊字符的字符串,这些字符是: 1) 破折号 2) 空间 3) 圆点 仅限大小为3-255个字符 但是我下面的表达似乎不起作用。我想尺寸有点问题 @Pattern(regexp=“^[-a-zA-Z\s\.]{3255}+$” 我甚至试过: @Pattern(regexp=“^[-a-zA-Z\s\.]\w{2256}+$” 但是,由于\w字符,这就给大小验证带来了问题-因为它只接受字母数字字符,我想不接受特殊字符 有什么想法吗???破折号也是一个特殊的键。加上反斜杠

我想检查只包含字母数字和少数特殊字符的字符串,这些字符是:

1) 破折号
2) 空间
3) 圆点

仅限大小为3-255个字符

但是我下面的表达似乎不起作用。我想尺寸有点问题

@Pattern(regexp=“^[-a-zA-Z\s\.]{3255}+$”

我甚至试过:

@Pattern(regexp=“^[-a-zA-Z\s\.]\w{2256}+$”

但是,由于\w字符,这就给大小验证带来了问题-因为它只接受字母数字字符,我想不接受特殊字符


有什么想法吗???

破折号也是一个特殊的键。加上反斜杠。你不需要+到结尾

^[\-a-zA-Z0-9\s\.]{3,255}$

破折号是字符类中的特殊字符,但在开始或结束时不需要转义(但不会造成伤害)@谢谢!!这很有效..而且stema说的是正确的..如果我的破折号字符停留在标记的开头或结尾,我不需要反斜杠..总是将语言添加到有关正则表达式的问题中。你的第一个正则表达式只缺少数字字符,其他所有东西都应该在很多语言中工作(不是全部).您只需要ASCII字母还是所有字母?