使用有效的端口号和查询字符串验证URL
Validate URL with valid port number and query string
我想使用正则表达式检查文本框是否包含有效的URL。有效的url可以如下所示。
http://www.google.com
https://www.google.com
http://clrs.mlslist.com:6103/
http://clrs.mlslist.com:6103/premium/login
http://reso.mlslisting.com/premium/login?rets-version=rets/1.5
有人能帮我为ASP RegularExpressionValidator构建验证表达式吗?
来源https://urlregex.com/:
/((([A-Za-z]{3,9}:(?:'/'/)?)(?:['-;:&='+'$,'w]+@)?[A-Za-z0-9'.'-]+|(?:www'.|['-;:&='+'$,'w]+@)[A-Za-z0-9'.'-]+)((?:'/['+~%'/'.'w'-_]*)?'??(?:['-'+=&;%@'.'w_]*)#?(?:['.'!'/'''w]*))?)/
这是一个非常宽松的正则表达式,应该适合您的需求:
^https?://[a-zA-Z0-9-]+('.[a-zA-Z0-9-]+)*'.'w+(:'d+)?(/['w-=.?]+)*/?$
需要http://
或https://
需要一组字符,然后可以选择多组用点分隔的字符(例如google
或www.google
或img1.srv2.google
)。
需要另一个.
,后跟一组字符(例如.com
)。
允许可选端口(例如:8080
)
从那里允许由/
s(例如/premium/login?rets-version=rets/1.5
)分隔的单词/数字字符和符号集合-=.?
RegExr示例
使用RegularExpressionValidator
并将表达式设置为以下内容:
^([''S''S]{0,4})$
用您想要的长度(最大)替换4
示例:
<asp:TextBox id="txtbx" Runat="server" />
<asp:RegularExpressionValidator id="RegularExpressionValidator1" runat="server"
ErrorMessage="Error: RegularExpressionValidator"
ValidationExpression="^(['S's]{0,4})$"
ControlToValidate="txtbx" />
<asp:Button ID="Button1" runat="server" Text="Button" />
相关文章:
- 如何有效地将游戏数据存储在URL查询字符串中
- 从查询字符串参数推断出正确的数据类型
- AngularJS:获取链接中没有哈希的查询字符串值
- AngularJS,如何更改查询字符串
- 如何将activeadmin查询字符串传递给batch_action
- 如何从查询字符串中的输入字段发回文本
- Django在使用AJAX时没有接收到新的查询字符串
- 使用查询字符串方法清除浏览器缓存
- 用于刷新的Javascript更改查询字符串
- 我想将查询字符串变量添加到JSON名称/值对中
- 将查询字符串值从页面传递 asp.net 到 iframe
- jqueryajax生成查询字符串,如果未定义则不通过
- 如何将查询字符串传递到HTML框架
- AngularJs将查询字符串发布到c#控制器
- Jquery - 从查询字符串中获取“#”值之后,而不是在“?”符号值之后获取
- 在 JavaScript 中将查询字符串传递给 Web 服务 (ASP.NET)
- 在查询字符串中查找 where 子句
- POST encodeURI查询字符串内部服务器错误 500
- JavaScript:从具有使用 # 符号的路由的 URL 获取查询字符串
- 更改链接 URL 中的路径名,同时保持查询字符串不变