全面解析:正则表达式大全

需积分: 4 1 下载量 47 浏览量 更新于2024-09-19 收藏 3KB TXT 举报
"正则表达式是用于匹配字符串的强大工具,常用于数据验证。这个资源提供了常见的正则表达式模式,涵盖了数字、字符、电话号码、邮箱、网址等多种验证场景。" 正则表达式是一种模式匹配语言,它允许开发者定义一系列规则来检查字符串是否符合特定的格式或模式。在编程和数据处理中,正则表达式广泛应用在数据验证、搜索、替换等任务中。以下是一些常见的正则表达式模式及其用途: 1. `^[0-9]*$`:匹配任何非空的整数序列。常用于验证纯数字输入。 2. `^\d{n}$`:匹配由n个数字组成的字符串。例如,`^\d{3}$`会匹配任何长度为3的数字串。 3. `^\d{n,}$`:匹配至少包含n个数字的字符串。用于确保至少有指定数量的数字。 4. `^\d{m,n}$`:匹配m到n个数字的字符串。允许在一定范围内调整长度。 5. `^(0|[1-9][0-9]*)$`:匹配非负整数,不包括0开头的0。用于防止输入0作为有效值。 6. `^[0-9]+(.[0-9]{2})?$`:匹配带有两位小数的数字,允许没有小数部分。常用于货币格式验证。 7. `^[0-9]+(.[0-9]{1,3})?$`:类似上一个,但小数部分可以有1到3位。 8. `^\+?[1-9][0-9]*$`:匹配可能带有前导加号(+)的非负整数。适用于国际电话号码。 9. `^\-[1-9][0-9]*$`:匹配非零负整数,用于负数输入验证。 10. `^.{3}$`:匹配长度为3的任意字符序列,常用于简单的密码验证。 11. `^[A-Za-z]+$`:匹配全大写或全小写字母组成的字符串,用于纯字母验证。 12. `^[A-Z]+$`:仅匹配全大写字母,通常用于ID或缩写的验证。 13. `^[a-z]+$`:仅匹配全小写字母,适用于纯小写字母验证。 14. `^[A-Za-z0-9]+$`:匹配字母和数字组合,常见于用户名或ID验证。 15. `^\w+$`:等价于`^[A-Za-z0-9_]+$`,匹配字母、数字和下划线的组合,适用于变量名或标识符验证。 16. `^[a-zA-Z]\w{5,17}$`:验证符合英文首字母+至少5个单词字符(字母、数字、下划线)的字符串,常用于邮箱地址前缀。 17. 一些特殊字符的排除表达式,如`[^%&,;=?$\"]+`,用于过滤掉特定的非法字符。 此外,正则表达式还支持对中文字符、邮箱地址、网址和电话号码的验证: 18. `^[\u4e00-\u9fa5]{0,}$`:匹配任意长度的中文字符,常用于中文输入的验证。 19. `^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$`:验证电子邮件地址的格式。 20. `^http://([\w-]+\.)+[\w-]+(/[\w-./?%&=]*)?$`:验证互联网URL的格式。 21. `^(\(\d{3,4}-)|\d{3,4}-)?\d{7,8}$`:匹配多种格式的电话号码,包括区号和无区号格式。 22. `^\d{15}|\d{18}$`:验证15位或18位的身份证号码。 23. `^(0?[1-9]|1[0-2])$`:匹配1到12的月份,用于日期验证。 24. `^((0?[1-9])|((1|2)[0-9])|30|31)$`:匹配1到31的日期,考虑了不同月份的天数。 在网页表单中,这些正则表达式常与JavaScript事件结合使用,如`onkeyup`和`onbeforepaste`,以实时检查用户输入并提供即时反馈。例如,限制输入为中文字符的输入框,可以使用`onkeyup="value=value.replace(/[^\u4E00-\u9FA5]/g, '')"`,这样可以确保用户输入的都是汉字。对于非中文字符的输入,可以使用类似的替换规则,以排除非法字符。