C#正则表达式实战:电话、密码验证与更多

需积分: 9 0 下载量 2 浏览量 更新于2024-12-07 收藏 8KB TXT 举报
本文主要介绍了在C#编程中如何使用正则表达式进行字符串验证,包括电话号码、密码、手机号等各种常见格式的检查。提供的正则表达式涵盖了数字、字母、特殊字符等不同类型的字符串匹配规则。 1. 数字验证: - 仅允许数字:"^[0-9]*$":这个正则表达式可以用来验证输入是否只包含数字。 - 指定长度的数字:"^\d{n}$":用于验证输入是否为n位的数字。 - 至少n位的数字:"^\d{n,}$":确保输入至少有n位数字,可以更多。 - 在m到n位之间的数字:"^\d{m,n}$":验证数字长度在m到n之间。 2. 特殊数值验证: - 非负整数:"^(0|[1-9][0-9]*)$":用于确认输入的整数不小于零。 - 金额格式:"^[0-9]+(.[0-9]{2})?$":验证金额,至少一位数字,最多两位小数。 - 1到3位小数的金额:"^[0-9]+(.[0-9]{1,3})?$":确保金额有1到3位小数。 3. 国际电话号码:"^\+?[1-9][0-9]*$":匹配国际电话号码,允许加号开头。 - 国内电话号码:"^\-[1-9][]0-9"*$:适用于国内电话号码格式,允许负号开头。 4. 字符串长度验证: - 恰好3个字符:"^.{3}$":验证字符串长度是否为3。 - 全部大写字母:"^[A-Z]+$":确认字符串由26个大写字母组成。 - 全部小写字母:"^[a-z]+$":检查字符串是否由26个小写字母组成。 - 大小写字母与数字组合:"^[A-Za-z0-9]+$":确保字符串由26个字母和数字组成。 - 任意字符:"^\w+$":匹配任何单词字符(等同于[a-zA-Z0-9_])。 5. 用户名和密码验证: - 带特殊字符的用户名:"^[a-zA-Z]\w{5,17}$":有效的用户名,首字符为字母,其余可为字母或数字,长度在6到18之间。 - 无特殊字符的密码:"^[^%&',;=?$\x22]+$":验证不含特定特殊字符的密码。 6. 中文字符验证: - 中文字符:"^[\u4e00-\u9fa5]{0,}$":确认字符串是否只包含中文字符。 7. 邮箱验证: - Email地址:"^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$":符合标准格式的电子邮件地址。 8. URL验证: - Internet URL:"^http://([\w-]+\.)+[\w-]+(/[\w-./?%&=]*)?$":匹配合法的互联网URL。 9. 电话号码验证: - 电话号码格式:"^(\(\d{3,4}-)|\d{3.4}-)?\d{7,8}$":支持多种格式的电话号码,如"XXX-XXXXXXX"、"XXXX-XXXXXXXX"等。 10. 身份证号验证: - 15位或18位身份证号:"^\d{15}|\d{18}$":验证身份证号码的长度。 11. 月份验证: - 1-12的月份:"^(0?[1-9]|1[0-2])$":确认输入的月份有效。 12. 日期验证: - 1-31的日期:"^((0?[1-9])|((1|2)[0-9])|30|31)$":检查输入的日期是否在1-31之间,考虑闰年。 以上正则表达式提供了C#中进行字符串验证的基本工具,可以根据具体需求灵活应用和调整。