C#正则表达式实用集锦

需积分: 26 7 下载量 77 浏览量 更新于2024-09-14 收藏 84KB DOC 举报
这篇内容主要介绍了C#中常见的正则表达式用法,正则表达式是一种强大的文本处理工具,用于在字符串中进行模式匹配和搜索替换。在C#中,我们可以使用System.Text.RegularExpressions命名空间下的Regex类来操作正则表达式。 1. **数字验证** - `^\d+$`:匹配非负整数,包括0。 - `^[0-9]*[1-9][0-9]*$`:匹配正整数,不包括0。 - `^((-\d+)|(0+))$`:匹配非正整数,即负整数和0。 - `^-?[0-9]*[1-9][0-9]*$`:匹配整数,包括正负整数和0。 - `^\d+(\.\d+)?$`:匹配非负浮点数,包括正浮点数和0。 - `^(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$`:匹配正浮点数。 - `^((-\d+(\.\d+)?)|(0+(\.0+)?))$`:匹配非正浮点数,包括负浮点数和0。 - `^-(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$`:匹配负浮点数。 - `^(-?\d+)(\.\d+)?$`:匹配浮点数,包括正负浮点数和0。 2. **字母和字符验证** - `^[A-Za-z]+$`:匹配由26个英文字母组成的字符串。 - `^[A-Z]+$`:匹配由26个大写英文字母组成的字符串。 - `^[a-z]+$`:匹配由26个小写英文字母组成的字符串。 - `^[A-Za-z0-9]+$`:匹配由数字和26个英文字母组成的字符串。 - `^\w+$`:匹配由数字、26个英文字母或下划线组成的字符串。 3. **邮箱地址验证** - `^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$`:用于验证电子邮件地址的正则表达式。 4. **URL验证** - `^[a-zA-z]+://(\w+(-\w+)*)(\.(\w+(-\w+)*))*(\?\S*)?$`:匹配URL地址。 5. **日期格式验证** - `/^(d{2}|d{4})-((0([1-9]{1}))|(1[1|2]))-(([0-2]([1-9]{1}))|(3[0|1]))$/`:匹配"年-月-日"格式的日期。 - `/^((0([1-9]{1}))|(1[1|2]))/(([0-2]([1-9]{1}))|(3[0|1]))/(d{2}|d{4})$/`:匹配"月/日/年"格式的日期。 6. **邮箱地址的另一种表示** - `"^([w-.]+)@(([[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.)|(([w-]+.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(]?)$"`:另一种验证邮箱地址的正则表达式。 7. **电话号码验证** - `(d+-)?(d{4}-?d{7}|d{3}-?d{8}|^d{7,8})(-d+)?`:匹配不同格式的电话号码。 这些正则表达式在C#中可用于验证用户输入,确保数据格式正确,提高程序的健壮性和用户体验。例如,在网页表单中,可以使用这些正则表达式来限制用户输入,比如限制只能输入数字、检查邮箱格式是否正确等。通过这些正则表达式,开发者可以高效地实现数据过滤和验证功能。