正在尝试使用的正则表达式数据注释我正在使用的WPF MVVM应用程序是命中和错过,似乎不适用于很多正则表达式。
这个有效(不是为了网址而是为了简单):
[RegularExpression(@"^[a-zA-Z''-'\s]{1,40}$")]
这个以及我尝试过的所有其他url验证正则表达式都没有:
[RegularExpression(@"/^(https?:\/\/)?([\da-z\.-]+)\.([a-z\.]{2,6})([\/\w \.-]*)*\/?$/")]
有没有人有一个工作URL正则表达式的例子用于数据注释和WPF?
答案 0 :(得分:0)
删除起始和结束斜杠,.net不需要正则表达式分隔符。此处不需要锚点,模式会自动与整个输入匹配。
[RegularExpression(@"(https?://)?([\da-z.-]+)\.([a-z.]{2,6})([/\w .-]*)*/?")]
应该更好。还删除了一些不必要的转义。我还没有检查模式本身的正确性!
答案 1 :(得分:0)
您可以在此How to validate URLs with regular expressions文章中找到有关验证网址的详情。
以下是其中一条适用于各种网址的建议:
<强> ^((HTTPS | FTP):// |(WWW | FTP))([A-z0-9-] +)[A-z0-9-] + +([/ ]。*)?$ 强>
正如@stema所说,如果您对此有任何问题,请显示您尝试验证的所有网址。