如何编写能够验证 URI 的正则表达式模式?

2024-03-27

一个人如何着手创作一部正则表达式与所有有效 URI 字符串匹配,但无法与所有无效 URI 字符串匹配?

为了具体说明我在提到 URI 时所指的内容,我在下面添加了最新 URI RFC 标准的链接。它定义了我想要使用正则表达式验证的实体。

我不需要它来解析 URI。我只需要一个正则表达式来验证。

The .Net 正则表达式格式是优选的。 (.Net V1.1)


我当前的解决方案:

^([a-zA-Z0-9+.-]+):(//([a-zA-Z0-9-._~!$&'()*+,;=:]*)@)?([a-zA-Z0-9-._~!$&'()*+,;=]+)(:(\\d*))?(/?[a-zA-Z0-9-._~!$&'()*+,;=:/]+)?(\\?[a-zA-Z0-9-._~!$&'()*+,;=:/?@]+)?(#[a-zA-Z0-9-._~!$&'()*+,;=:/?@]+)?$(:(\\d*))?(/?[a-zA-Z0-9-._~!$&'()*+,;=:/]+)?(\?[a-zA-Z0-9-._~!$&'()*+,;=:/?@]+)?(\#[a-zA-Z0-9-._~!$&'()*+,;=:/?@]+)?$

Does Uri.IsWellFormedUriString http://msdn.microsoft.com/en-us/library/system.uri.iswellformeduristring.aspx为你工作?

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何编写能够验证 URI 的正则表达式模式? 的相关文章

随机推荐