正则表达式:数据格式验证大全

需积分: 10 0 下载量 28 浏览量 更新于2024-09-11 收藏 15KB TXT 举报
"正则表达式用于验证各种输入格式,如实数、整数、时间、年份、月份、手机号码、邮箱等。" 正则表达式是编程中用于匹配字符串的强大工具,常用于数据验证,确保用户输入符合特定格式。以下是一些常见的正则表达式模式及其用途: 1. 邮箱验证: `'\\w+([-+.']\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*'` 这个正则表达式用于检查输入是否符合基本的电子邮件地址格式,包括用户名、@符号、域名和顶级域名。 2. URL验证: `URL:http(s)?://(\\w-+.)+\\w-+(/\\w-./?%&=*)?` 这个正则表达式用于验证URL是否有效,涵盖了http和https协议,以及域名和可选的路径、查询参数等。 3. 手机号码验证: `绰\(0\d{2,3}\)[-]?\d{7,8}|0\d{2,3}[-]?\d{7,8}|1\d{10}|\d{7,8}` 这个正则表达式涵盖了多种格式的中国手机号码,包括区号加号码、无区号的11位号码以及简单的7或8位号码。 4. 电话号码验证: `(\d{3}-|\d{4}-)?(\d{8}|\d{7})?` 此正则表达式用于验证电话号码,可以处理有或没有区号,以及7位或8位的本地号码。 5. 中国身份证号(15位或18位)验证: `^\d{18}|\d{17}x|\d{15}$` 用于检查输入的身份证号码是否合法,包含18位身份证号、17位带校验X的身份证号以及15位身份证号。 6. IP地址验证: `IP((2[0-4]\d|25[0-5]|[01]?\d\d?)\.(2[0-4]\d|25[0-5]|[01]?\d\d?)\.(2[0-4]\d|25[0-5]|[01]?\d\d?)\.(2[0-4]\d|25[0-5]|[01]?\d\d?))` 这个正则表达式用于验证IPv4地址,确保每个部分的数值在0到255之间。 7. 实数验证: `ʵ[-]?\d+.\d*(E\-[1-9]+)?|^[-]?\d+.\d*(E\+[1-9]+){0,1}$` 用于确认输入的数字是一个有效的实数,支持科学计数法。 8. 整数验证: `ʵѧ㷨^[-]?(\d+.\d+)|\d+$` 这个正则表达式用于验证输入是否为一个整数,包括正负整数和零。 9. 年份和月份验证: 日期验证的正则表达式较为复杂,通常需要根据具体格式进行编写。例如,`^((\d{2}(([02468][048])|([13579][26]))[\-\/\s]?((((0?[13578])|(1[02]))[\-\/\s]?((0?[1-9])|([1-2][0-9])|(3[01])))|(((0?[469])|(11))[\-\/\s]?((0?[1-9])|([1-2][0-9])|(30)))|(0?2[\-\/\s]?((0?[1-9])|(1[0-2])))))|(\d{2}(([02468][1235679])|([13579][01345789]))[\-\/\s]?((((0?[13578])|(1[02]))[\-\/\s]?((0?[1-9])|([1-2][0-9])|(3[01])))|(((0?[469])|(11))[\-\/\s]?((0?[1-9])|([1-2][0-9])|(30)))|(0?2[\-\/\s]?((0?[1-9])|(1[0-9])|(2[0-8]))))))(\s(((0?[1-9])|(1[0-2]))\:([0-5][0-9])((\s)|(\:([0-5][0-9])\s))([AM|PM|am|pm]{2,2})))?$` 可以匹配闰年和平年的日期,并且包含了时间的验证。 10. QQ号码验证: `QQ룺^\d{5,14}$` 这个正则表达式用于确认输入的QQ号码是否为5至14位的数字。 这些正则表达式只是正则表达式世界中的一小部分,实际上,你可以用它们来验证几乎任何类型的数据格式,只需根据需要调整模式即可。在实际开发中,根据具体的应用场景,可能还需要对这些正则表达式进行更复杂的调整和优化。