Java正则表达式大全:输入验证与数据校验
需积分: 9 79 浏览量
更新于2024-09-28
收藏 59KB DOC 举报
"这篇资源主要收集了Java开发中常用的正则表达式,用于文本框输入内容的控制和验证。涵盖的正则表达式包括但不限于整数、小数、数字限制、字母组合、特殊字符限制、汉字、邮箱地址、网址、电话号码以及身份证号等。这些正则表达式可以帮助开发者有效地验证用户输入的数据格式,确保数据的正确性和安全性。"
正则表达式是编程语言中用于模式匹配的强大工具,尤其在Java中,它们被广泛用于数据验证、字符串搜索和替换等多个场景。以下是一些Java开发中常见的正则表达式及其用途:
1. **整数或小数**:`^[0-9]+\.{0,1}[0-9]{0,2}$` - 这个正则表达式用于匹配整数或最多两位小数的浮点数。
2. **纯数字输入**:`^[0-9]*$` - 仅允许输入数字,不包含其他字符。
3. **固定位数数字**:`^\d{n}$` - 只能输入n位的数字。
4. **至少n位数字**:`^\d{n,}$` - 输入的数字至少要有n位。
5. **m~n位数字**:`^\d{m,n}$` - 输入的数字长度在m和n之间。
6. **零或非零开头的数字**:`^(0|[1-9][0-9]*)$` - 可以是零或非零开头的数字序列。
7. **两位小数的正实数**:`^[0-9]+(.[0-9]{2})?$` - 匹配至少一位整数,可选两位小数的正实数。
8. **1~3位小数的正实数**:`^[0-9]+(.[0-9]{1,3})?$` - 至少一位整数,最多三位小数的正实数。
9. **非零正整数**:`^\+?[1-9][0-9]*$` - 非零的正整数,可以包含正号。
10. **非零负整数**:`^\-[1-9][0-9]*$` - 非零的负整数,以负号开始。
11. **固定长度的字符**:`^.{3}$` - 只能输入长度为3的任意字符。
12. **英文字母字符串**:`^[A-Za-z]+$` - 全部由26个英文字母组成。
13. **大写英文字母字符串**:`^[A-Z]+$` - 只包含大写英文字母。
14. **小写英文字母字符串**:`^[a-z]+$` - 只包含小写英文字母。
15. **数字和英文字母字符串**:`^[A-Za-z0-9]+$` - 数字和26个英文字母的组合。
16. **数字、字母或下划线**:`^\w+$` - 数字、字母或下划线的组合,常用于验证用户名或变量名。
17. **用户密码验证**:`^[a-zA-Z]\w{5,17}$` - 以字母开头,包含字符、数字和下划线,长度在6到18之间的密码。
18. **特殊字符限制**:`[^%&',;=?$\x22]+` - 验证是否包含特定的特殊字符。
19. **汉字输入**:`^[\u4e00-\u9fa5]{0,}$` - 仅允许输入汉字。
20. **邮箱地址验证**:`^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$` - 验证电子邮件地址格式。
21. **网址验证**:`^http://([\w-]+\.)+[\w-]+(/[\w-./?%&=]*)?$` - 检查输入的URL是否合法。
22. **电话号码验证**:`^(\(\d{3,4}-)|\d{3,4}-)?\d{7,8}$` - 验证各种格式的电话号码。
23. **15位或18位身份证号**:`^\d{15}|\d{18}$` - 验证中国15位或18位的身份证号码。
24. **12个月份**:`^(0?[1-9]|1[0-2])` - 验证一个月的月份,1到12。
25. **年份验证**:对于年份的验证,通常需要根据具体业务需求来定制正则表达式。
这些正则表达式在Java中可以通过`Pattern`和`Matcher`类进行使用,例如:
```java
Pattern pattern = Pattern.compile("^[0-9]+\.{0,1}[0-9]{0,2}$");
Matcher matcher = pattern.matcher(input);
if (matcher.matches()) {
// 输入符合正则表达式的格式
} else {
// 输入不符合正则表达式的格式
}
```
通过这些正则表达式,开发者可以轻松地实现对用户输入的验证,防止非法数据的输入,提高应用的安全性和稳定性。
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
2024-03-22 上传
2010-04-21 上传
105 浏览量
点击了解资源详情
105 浏览量
super88home
- 粉丝: 1
- 资源: 4
最新资源
- μC_OS-Ⅱ中文资料大全
- Linux设备驱动开发技术及应用
- uCOS-II 在ATmega128上的移植.doc
- Linux Uart Driver
- autocad-PPT
- [计算机科学经典著作].Prentice.Hall.-.The.C.Programming.Language.2nd.Edition.pdf
- Linux Programming by Example - The Fundamentals
- 简明HTML教程,适合初学者用
- AVR的GCC编程(初学者必看)
- 总线协议简介讲解I2C总线协议
- c语言程序设计经典100例
- Linker Script in Linux
- Linux System Programming
- 新一代视频压缩编码标准H.264
- Learning the Vi and Vim Editors 7th Edition
- Embedded Linux Porting