检查字符串值是否为整数集

毁了

我试图输入一个字符串,并检查字符串的值是否等于1-9999之间的数字,否则返回错误消息。我已经听说过可以使用.isNumeric()或.Matches(),但似乎无法弄清楚如何实现它。这是我到目前为止的内容:

String yearString;
int year = 0;
Scanner input = new Scanner(System.in);

do {
    System.out.println("Please enter the year of the start date");
    yearString = input.nextLine();

    if (yearString.matches("[1-9999]+"))
    {
        year = Integer.parseInt(yearString);
    }
    else
    {
        System.out.println("Please enter positive numbers only");
    }

} while (year <= 0);
你说

如果你想有一个正则表达式的方法,你可以使用下面的正则表达式,而不是[1-9999]+(产生无限的数字): [1-9][0-9]{0,3}这意味着任何String以非零数字开头,然后是3或更少的数字。

一点测试:

String regex = "[1-9][0-9]{0,3}";
int i;
for (i=0 ; String.valueOf(i + 1).matches(regex) ; i++);
System.out.println(i);

9999预期的输出但是,@uʍopǝpısdn解决方案更具可读性,但如果存在很多无效字符串(异常开销不可忽略),则解决方案可能会更慢,而正则表达式方法并不依赖于此。如果要测试的条目很多,则应该只编译一次模式并使用Matcher

Pattern p = Pattern.compile("[1-9][0-9]{0,3}"); 
int i;
for (i=0 ; p.matcher(String.valueOf(i + 1)).matches() ; i++);
System.out.println(i);

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

检查字符串值是否为整数集

来自分类Dev

检查字符串是否为整数?

来自分类Dev

检查字符串是否为整数

来自分类Dev

如何在Ruby中检查字符串是否为整数?

来自分类Dev

如何使用spring注释检查字符串是否为整数?

来自分类Dev

用于检查字符串是否为整数的正则表达式

来自分类Dev

如何检查字符串是否为有效整数?

来自分类Dev

如何检查字符串在C中是否为整数?

来自分类Dev

如何检查字符串数组中的每个元素是否为整数?

来自分类Dev

如何检查字符串是否为有效整数?

来自分类Dev

在python中检查字符串是否为用+号分隔的整数列表

来自分类Dev

如何检查字符串是否包含整数?-迅速

来自分类Dev

在换行后检查字符串是否以整数开头

来自分类Dev

如何检查字符串字符是否为空格?

来自分类Dev

如何快速检查字符串是否为nil?

来自分类Dev

如何检查字符串是否为json格式

来自分类Dev

检查字符串在R中是否为大写

来自分类Dev

检查字符串是否为空或空白

来自分类Dev

检查字符串是否为UUID

来自分类Dev

Postgres查询以检查字符串是否为数字

来自分类Dev

如何检查字符串是否为字母?

来自分类Dev

检查字符串是否为日期Postgresql

来自分类Dev

检查字符串是否为Android中的数字

来自分类Dev

在dart中检查字符串是否为数字

来自分类Dev

检查字符串是否为base64

来自分类Dev

如何检查字符串是否为日期?

来自分类Dev

JSTL:检查字符串是否为空

来自分类Dev

如何检查字符串数组是否为空?

来自分类Dev

如何检查字符串是否为空