当我使用.Net RegularExpressionsValidator控件时,Validation表达式匹配EXACT文本.当我这样说时,我的意思是,对于我给它验证的字符串,如果它偏离正则表达式模式,则所有字符串都不会验证.
例如:(([0-1] [0-9])|([2] [0-3])):( [0-5] [0-9])如果在RegularExpressionsValidator控件中给出,则只匹配字符串喜欢 - > 12:00,07:15,23:59但不匹配字符串12:00foo,bar23:00,foobar.
现在,当我在后面的代码中使用Regex类并给它相同的正则表达式时,它匹配包含匹配和任何其他字符的所有字符串.
例如:(使用与上一个例子相同的正则表达式)如果我使用Regex类,则以下字符串将匹配 - > 12:00,07:15,23:59和12:00foo(包含匹配),bar23:00 (包含一个匹配).
有没有理由对它们进行不同的处理,是否有办法模仿与RegularExpressionValidator控件相同的行为?
提前致谢!
我正在研究的ASP.Net 2.0项目的要求将某个字段限制为最多10个字(不是字符).我目前正在使用具有以下ServerValidate方法的CustomValidator控件:
Protected Sub TenWordsTextBoxValidator_ServerValidate(ByVal source As Object, ByVal args As System.Web.UI.WebControls.ServerValidateEventArgs) Handles TenWordsTextBoxValidator.ServerValidate
'' 10 words
args.IsValid = args.Value.Split(" ").Length <= 10
End Sub
Run Code Online (Sandbox Code Playgroud)
有没有人有更彻底/更准确的字数统计方法?