Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/spring-mvc/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 需要检查srv是否匹配_Javascript_Regex - Fatal编程技术网

Javascript 需要检查srv是否匹配

Javascript 需要检查srv是否匹配,javascript,regex,Javascript,Regex,我试图用jquery preg_match验证srv记录 我需要:'PriorNumber WeightNumber端口号地址/服务器'。 这需要限制为总共最多5个零件 目前,我有一个部分工作,但只有最后一部分不工作,当我使用域或ip地址 /^((\d+ \d+ \d+\w+.(?:\s+\w+)\1{0,1}$))/ 工程=100 1 4234 sipdsdfghj 不工作:100 1 4234 sipdsdfghj.sadas 请帮我做这个 完整代码验证 值=100 1 4234 sip

我试图用jquery preg_match验证srv记录

我需要:'PriorNumber WeightNumber端口号地址/服务器'。 这需要限制为总共最多5个零件

目前,我有一个部分工作,但只有最后一部分不工作,当我使用域或ip地址

/^((\d+ \d+ \d+\w+.(?:\s+\w+)\1{0,1}$))/
工程=100 1 4234 sipdsdfghj

不工作:100 1 4234 sipdsdfghj.sadas

请帮我做这个

完整代码验证

值=100 1 4234 sipdsdfghj.asd

// Functie voor het valideren van srv record 'prioriteit gewicht poort doeladres'
jQuery.validator.addMethod("srvRecord", function(value, element) {
    if (value.indexOf(' ') >= 0) {

        console.log(value);

        if(value.match( /^(?<prior>\d+)\h+(?<weight>\d+)\h+(?<port>\d+)\h+(?:(?<ip>\d{1,3}(?:\.\d{1,3}){3})|(?<domain>\S+\.\S+))$/gm) !== null){
            return true;
        }

        return false
    } 
}, "* Amount must be greater than zero");
//Functie voor het valideren van srv记录“prioriteit gewicht poort doeladres”
jQuery.validator.addMethod(“srvRecord”,函数(值,元素){
if(value.indexOf(“”)>=0){
console.log(值);
if(value.match(/^(?\d+)\h+(?\d+)\h+(?\d+)\h+(?:(?\d{1,3}(?:\.\d{1,3}){3});(?\S+.\S+)$/gm)!=null){
返回true;
}
返回错误
} 
},“*金额必须大于零”);

您可以尝试此正则表达式解决方案:

/^\d+(?:\s+\d+){2}\s+(?:\d{1,3}(?:\.\d{1,3}){3}|\S+\.\S+)$/
请注意,它并不真正验证IP或域名,它只匹配类似IP和类似域的子字符串。有关更精确的IP正则表达式的详细信息,请参阅

详细信息

  • ^
    -字符串的开头
  • \d+
    -1+位
  • (?:\s+\d+{2}
    -2个1+空格和1+数字序列
  • \s+
    -1+空格
  • (?:\d{1,3}(?:\.\d{1,3}){3}\S+\.\S+
    -以下任一项:
    • \d{1,3}(?:\.\d{1,3}{3}
      -1到3位,然后是3个
      序列和1到3位
    • \S+\.\S+
      -1+非空白字符、
      和1+非空白字符
  • $
    -字符串结束

也许就足够了?不。连最后一部分都没做最后一部分是什么?请注意,您没有提供任何模式要求,不清楚您试图执行什么操作。就像这样,字符串的最后一部分是ip/域,我的表达式没有看到。在域或ip中作为1个输入部分。需要验证该输入“100 1 4234 sipdsdfghj.sadas”或“100 1 4234 8.8.8.8”见