C#正则表达式完全指南:输入限制与验证

需积分: 10 5 下载量 42 浏览量 更新于2024-09-24 收藏 43KB DOC 举报
"这篇资源是关于C#编程中正则表达式的使用大全,涵盖了各种常见输入格式的验证规则。" 正则表达式是用于匹配字符串模式的一种强大工具,在C#中广泛应用于数据验证和文本处理。这篇资源详细列举了多种正则表达式模式,帮助开发者确保用户输入的数据符合特定格式要求。 1. **只能输入数字**: 表达式`^[0-9]*$`可以确保输入只包含0到9的数字,不包含其他任何字符。 2. **只能输入n位数字**: `^\d{n}$`匹配恰好n位的数字,如`^\d{3}$`将匹配三位数字。 3. **只能输入至少n位数字**: `^\d{n,}$`匹配至少n位的数字,例如`^\d{5,}$`要求至少五位数字。 4. **只能输入m~n位数字**: `^\d{m,n}$`允许输入m到n位的数字,如`^\d{2,4}$`允许两到四位数字。 5. **零和非零开头的数字**: `^(0|[1-9][0-9]*)$`确保数字可以以0开头,但不能全为0,也可以是非零开头的任意数字。 6. **有两位小数的正实数**: `^[0-9]+(.[0-9]{2})?$`匹配整数或最多带两位小数的正数。 7. **有1~3位小数的正实数**: `^[0-9]+(.[0-9]{1,3})?$`允许正数带有1到3位小数。 8. **非零的正整数**: `^\+?[1-9][0-9]*$`匹配非零的正整数,可以有正号但不是必需的。 9. **非零的负整数**: `^\-[1-9][0-9]*$`匹配非零的负整数,开头必须是负号。 10. **长度为3的字符**: `^.{3}$`确保输入字符串长度恰好为3。 11. **由26个英文字母组成的字符串**: `^[A-Za-z]+$`仅允许输入由26个大小写字母组成的字符串。 12. **由26个大写英文字母组成的字符串**: `^[A-Z]+$`只接受大写字母。 13. **由26个小写英文字母组成的字符串**: `^[a-z]+$`只接受小写字母。 14. **由数字和26个英文字母组成的字符串**: `^[A-Za-z0-9]+$`允许数字和字母的组合。 15. **由数字、26个英文字母或者下划线组成的字符串**: `^\w+$`通常用于匹配单词字符,包括字母、数字和下划线。 16. **用户密码验证**: `^[a-zA-Z]\w{5,17}$`要求以字母开头,长度在6到18之间,可包含字母、数字和下划线。 17. **特殊字符验证**: `[^\%&',;=?$\x22]+`用来检测字符串中是否包含特定的特殊字符。 18. **输入汉字**: `^[\u4e00-\u9fa5]{0,}$`确认输入是否只包含汉字。 19. **验证Email地址**: `^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$`检查电子邮件地址的格式是否正确。 20. **验证Internet URL**: `^http://([\w-]+\.)+[\w-]+(/[\w-./?%&=]*)?$`用于验证网址的合法性。 21. **验证电话号码**: `^(\(\d{3,4}-)|\d{3,4}-)?\d{7,8}$`匹配多种格式的电话号码,包括区号和无区号的情况。 22. **验证15位或18位身份证号**: `^\d{15}|\d{18}$`检查身份证号码是否有效。 23. **验证一年的12个月**: `^(0?[1-9]|1[0-2])$`确保输入的是1到12的月份数字。 24. **验证一个月的31天**: `^((0?[1-9])|((1|2)[0-9])|30|31)$`确保输入的是1到31的日期。 掌握这些正则表达式,可以帮助开发者更有效地进行数据验证,确保用户输入的数据格式正确,提高应用程序的安全性和用户体验。在实际开发中,可以根据具体需求对这些表达式进行微调,以满足更加细致的验证规则。