Skip to main content
 首页 » 编程设计

c#之用于网址检查的正则表达式

2024年02月13日31powertoolsteam

<分区>

在我的“ServiceEditModel”类中,我有一个 typeof Uri 的属性 Url。为了进行验证,我搜索了一个正则表达式来检查我的“编辑”页面上填写的 Url 是否有效。
正则表达式应该检查

  1. 是否有 http://或 https://
  2. 正文仅包含字母字符和数字
  3. 结尾类似于.com、.net、.ch
  4. 应该有可能,结尾后面还有另一个参数,例如https://stackoverflow.com/questions。

我的正则表达式所在的代码如下所示:

[Required(ErrorMessageResourceType = typeof(Resources.ApplicationTemplate), ErrorMessageResourceName = "UrlRequired")] 
[RegularExpression("REGEX COMES HERE", ErrorMessageResourceType = typeof(Resources.ApplicationTemplate), ErrorMessageResourceName = "InvalidUrl")] 
public Uri Url { get; set; } 

我已经在寻找 Regex,但找不到合适的,因为这实际上是我第一次使用 Regex。

感谢您的帮助!

编辑

我更新了我的正则表达式,这样它也允许带有“-”字符的 url,例如 http://www.comsoft-direct.ch/

更新的正则表达式:^(http|https):\/\/([\w\d + (\-)+?]+\.)+[\w]+(\/.*) ?$