Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/16.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
Java 检查正则表达式中大于负-328的整数_Java_Regex_Regex Lookarounds - Fatal编程技术网

Java 检查正则表达式中大于负-328的整数

Java 检查正则表达式中大于负-328的整数,java,regex,regex-lookarounds,Java,Regex,Regex Lookarounds,我正在寻找一个正则表达式,它能够匹配大于-328的数字,如果有可能提供另一个解决方案来匹配相同的模式,但没有零。我尝试了很多方法,但仍然不确定它是如何工作的,例如,^ \-?[0-9]\d{3,}$ 我将它与com.jfoenix.validation.RegexValidator一起使用,以检查文本字段中的模式 谢谢,试试这个 String pat = "^-(32[0-7]|3[0-1]\\d|[1-2]\\d\\d|\\d{1,2})|\\d+$"; for (int i = -1000;

我正在寻找一个正则表达式,它能够匹配大于-328的数字,如果有可能提供另一个解决方案来匹配相同的模式,但没有零。我尝试了很多方法,但仍然不确定它是如何工作的,例如,^ \-?[0-9]\d{3,}$ 我将它与com.jfoenix.validation.RegexValidator一起使用,以检查文本字段中的模式

谢谢,试试这个

String pat = "^-(32[0-7]|3[0-1]\\d|[1-2]\\d\\d|\\d{1,2})|\\d+$";
for (int i = -1000; i <= 1000; ++i) {
    String s = Integer.toString(i);
    boolean result = s.matches(pat);
    if (result != (i > -328))
        System.out.println(i + " fail!");
}

兄弟,这太完美了,你刚刚保存了我的编程项目正则表达式是最糟糕的范围检查工具。您应该将文本转换为整数,并使用比较运算符对其进行范围检查。