我希望用户在textarea中添加至少2个字符,不包括空格
pattern="[a-zA-Z0-9?$@#()'!,+-=_:.&€£*%/]+{2,500}"
它不起作用,因为用户甚至可以添加一个空格并提交表单!
答案 0 :(得分:0)
您使用了if(emailfound == true)
运算符,表示“一个或多个”。我猜测+
被忽略了。尝试将模式更改为:
{2,500}
现在pattern = "[a-zA-Z0-9?$@#()'!,+=_:.&€£*%/-]{2,500}"
数量说明符说“必须至少发生两次,最多五次”。
顺便说一下,我已经将连字符{2,500}
从你的角色类的中间移到了最后。如果连字符出现在字符类中除最终字符之外的任何位置,则假定它创建一个字符间隔(例如-
)。因此,如果要允许连字符匹配,则它必须是字符类中的最后一个字符。
答案 1 :(得分:0)
如果你想要至少两个非空格字符,只需使用\S.*\S
作为匹配的正则表达式。它将匹配两个非空白字符,其中包含任何。如果您只想使用ASCII字符集,请更改\S
[!-~]
。或者像你一样,在括号中输入允许的整个字符集。