正则表达式之IP、域名、端口、权重的取值限制方式
这段时间写项目刚好碰到ip地址、域名和端口号、权重的正则表达式,作为新手一枚,记不住正则表达式,以此文档来记录,同样供更多小白使用。有一些大同小异之处,根据自己需求写吧。第一次写博客,更多建议敬请评论。
ip地址的正则表达式(仅支持用户输入0.0.0.0-255.255.255.255):
IP: [
{
message: "请输入正确格式的IP!",
trigger: "blur",
pattern: /^((2[0-4]\d|25[0-5]|[01]?\d\d?)\.){3}(2[0-4]\d|25[0-5]|[01]?\d\d?)$/
}
],
端口的正则表达式(仅支持0-65535的正整数):
port: [
{
validator: function(rule, value, callback) {
var portRegex = /^([1-9]|[1-9]\d|[1-9]\d{2}|[1-9]\d{3}|[1-5]\d{4}|6[0-4]\d{3}|65[0-4]\d{2}|655[0-2]\d|6553[0-5])$/;
if (portRegex.test(value) || !value) {
callback();
} else {
callback(new Error("仅支持0-65535的端口号!"));
}
},
trigger: "blur"
}
],
域名的正则表达式:
hosts: [
{
validator: function(rule, value, callback) {
if (
!/^[a-zA-Z0-9][a-zA-Z0-9-]{1,61}[a-zA-Z0-9](?:\.[a-zA-Z]{2,})+$/.test(
value
)
) {
callback(new Error("请输入正确格式的域名!"));
} else {
callback();
}
},
trigger: "blur"
}
],
权重的正则表达式(仅支持0和正整数):
weight: [
{
message: "仅支持0和正整数!",
trigger: "blur",
pattern: /^([0]|[1-9][0-9]*)$/
}
],
最后,在这里给大家附上同事给我分享的校验正则表达式的官网地址正则表达式在线校验,祝大家生活愉快!