Chr*_*ndt 4 regex validation coldfusion cfinput cfform
我有一个非常简单的cfform与一个表单字段:
<cfform action="asdf.cfm" method="post">
<cfinput name="fieldName" type="text" size="20" maxlength="20" required="yes" validate="regex" pattern="[A-Za-z]" message="Only characters are allowed." />
<input type="submit" name="btnSubmit" value="check" />
</cfform>
Run Code Online (Sandbox Code Playgroud)
从理论上讲,这将允许任何组合中的AZ和AZ,并且必须包含一些内容.
在实践中,我能够输入'aa'并且javascript验证不会抱怨.由于"空间"字符不在AZ中而不在az中,所以发生了什么?
谢谢!克里斯
Tom*_*lak 13
您缺少字符串开头和字符串结尾锚点:
^[A-Za-z]$
Run Code Online (Sandbox Code Playgroud)
或者,更有可能:
^[A-Za-z]{1,20}$
Run Code Online (Sandbox Code Playgroud)
你的样本,修改过:
<cfform action="asdf.cfm" method="post">
<cfinput name="fieldName" type="text" size="20" maxlength="20" required="yes" validate="regex" pattern="^[A-Za-z]{1,20}$" message="Only characters are allowed." />
<input type="submit" name="btnSubmit" value="check" />
</cfform>
Run Code Online (Sandbox Code Playgroud)
没有这些锚点,正则表达式只需要匹配任何地方,它不需要完全匹配.
归档时间: |
|
查看次数: |
7497 次 |
最近记录: |