Java常用正则表达式大全:实战与验证

0 下载量 25 浏览量 更新于2024-09-01 收藏 69KB PDF 举报
Java正则表达式是编程中不可或缺的一部分,特别是在处理字符串时,它们提供了强大的模式匹配功能。以下是一些常用Java正则表达式及其应用场景的详细解释: 1. **数字验证**: - 只能输入数字:"^[0-9]*$":表示任何数量的数字字符。 - 只能输入n位的数字:"^\d{n}$":限制输入的数字位数为n。 - 只能输入至少n位的数字:"^\d{n,}$":最少n位,可包含更多位数。 - 范围限制:"\d{m,n}",限制输入的数字在m到n位之间。 - 零和非零开头:"^(0|[1-9][0-9]*)$":允许以0或1-9开头的任意位数数字。 - 有两位小数的正实数:"^[0-9]+(.[0-9]{2})?$":最多两位小数,可选。 - 1-3位小数的正实数:"^[0-9]+(.[0-9]{1,3})?$":1到3位小数。 2. **字符类型验证**: - 3位长度的字符:"^.{3}$":确保字符串长度为3。 - 英文字符:"^[A-Za-z]+$":仅包含大写或小写字母。 - 大写英文字符:"^[A-Z]+$":仅大写字母。 - 小写英文字符:"^[a-z]+$":仅小写字母。 - 数字与字母组合:"^[A-Za-z0-9]+$":包括数字和字母。 - 数字、字母和下划线:"^\w+$":特殊字符包括数字、字母和下划线。 3. **密码验证**: - 用户密码:"^[a-zA-Z]\w{5,17}$":要求以字母开头,长度在6到18个字符之间,允许字母、数字和下划线。 4. **特殊字符检测**: - 避免特定字符:"[^%&',;=?$\x22]+":排除百分号、等号、问号等字符。 5. **中文字符验证**: - 只能输入汉字:"^[\u4e00-\u9fa5]{0,}$":仅包含汉字。 6. **电子邮件验证**: - Email地址:"^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$":遵循标准格式。 7. **URL验证**: - Internet URL:"^http://%28[/\w-]+\.)+[\w-]+(/[\w-./?%&=]*)?$":支持http或https协议及路径。 8. **电话号码验证**: - 中国手机号码:"^(\(\d{3,4}-)|\d{3.4}-)?\d{7,8}$":符合中国固定和移动电话号码格式。 9. **身份证号码验证**: - 15位或18位数字:"^\d{15}|\d{18}$":验证中国身份证号码。 10. **日期和月份验证**: - 一年中的12个月:"^(0?[1-9]|1[0-2])$":验证01至12月。 - 一个月的31天:"(空缺)":此处缺失具体表达式,可能需要一个类似"^(31)$"的正则来匹配31天的月份。 这些正则表达式在处理用户输入验证、数据清洗、格式检查等方面非常有用。记住,在实际应用中,根据需求调整和优化正则表达式以适应特定场景。