嗨我在互联网上发现,这个正则表达式接受正数^ \ D + $,这不接受任何^ $ 所以没有我想结合这两个正则表达式,但没有成功。我试试这个(^ \ d + $)|(^ $),但这没有奏效。所以帮我正则表达式,其接受正整数,并没有什么 THX很多正则表达式接受正整数和什么都没有
回答
简单地做:
^\d*$
的*
意思是:“零次或多次”。
由于您已经提出了有关Java标记的大部分问题,因此我假设您正在寻找Java解决方案。请注意,在字符串文字中,\
需要逃脱!
一个演示:
class Test {
public static void main(String[] args) {
String[] tests = {"-100", "", "2334", "0"};
for(String t : tests) {
System.out.println(t + " -> " + t.matches("\\d*"));
}
}
}
生产:
-100 -> false
-> true
2334 -> true
0 -> true
注意matches(...)
已经验证了整个输入字符串,所以没有必要为 “锚” 它^
和$
。
请注意,对于超过Integer.MAX_VALUE
和Long.MAX_VALUE
的数字,它也会返回true。所以即使matches(...)
返回true,parseInt(...)
或parseLong(...)
可能会抛出异常!
yae它的工作原理很多 – hudi
@hudi,不客气。 –
虽然这匹配多个零(“000”)。我使用了不那么优雅的正则表达式''0 | [1-9] [0-9] *“'来处理这个问题。 –
尝试^[0-9]*$
。这一个允许数字,什么也不是。
^\d*$
怎么样?这将接受一行数字(即一个正整数)本身在一行没有空白或空行。
- 1. 什么是正则表达式接受
- 2. 正则表达式接受@
- 3. 正则表达式只接受正数和小数
- 4. 如何使正则表达式匹配整个字或什么都没有
- 5. 为什么找到-regex不接受我的正则表达式?
- 6. 为什么'{'在这个正则表达式中不被接受?
- 7. 如何使正则表达式接受
- 8. 正则表达式不接受。在C#
- 9. $ httpBackend不接受正则表达式
- 10. 正则表达式接受 - 字符
- 11. perl正则表达式“\ w”不接受“$”
- 12. Java的正则表达式接受比
- 13. 正则表达式接受单词
- 14. 正则表达式接受1,2,3或2
- 15. 正则表达式不被接受
- 16. 正则表达式接受双引号
- 17. 修改此正则表达式:{([^ \] *)}接受\]
- 18. 不接受密码正则表达式
- 19. Datamapper不接受正则表达式
- 20. 正则表达式整数在单词没有正常失败
- 21. 正则表达式的正则表达式是什么?
- 22. 调整正则表达式来接受几种模式
- 23. 正则表达式选项 - 没有递归正则表达式
- 24. 没有正则表达式库的简单正则表达式?
- 25. 正则表达式在Python中为正整数和负整数
- 26. 什么是正数和负数的正则表达式验证?
- 27. 为什么Java有一个replaceAll(正则表达式,替换),但replaceAll(正则表达式,正则表达式)?
- 28. 接受浮点数和减号( - )的正则表达式
- 29. 正则表达式只接受数字和特殊字符
- 30. 接受数字,字母和连字符的正则表达式
针对哪种语言编写正则表达式? – borrible
java:Pattern.compile(regexp) – hudi