C#正则表达式实战指南

需积分: 9 1 下载量 25 浏览量 更新于2024-09-19 收藏 26KB DOC 举报
"这篇资料主要介绍了C#编程中常用的正则表达式模式,包括匹配不同类型的数字、浮点数、字母组合、邮箱地址、URL、日期格式以及电话号码等。" 在C#中,正则表达式是一种强大的文本处理工具,用于在字符串中查找、替换或提取符合特定模式的文本。以下是一些常见的C#正则表达式及其用途: 1. 非负整数:`^\d+$` 这个正则表达式用于匹配任何非负整数,包括零。它会确保输入只包含0到9的数字,没有其他字符。 2. 正整数:`^[0-9]*[1-9][0-9]*$` 此正则表达式用于匹配正整数,不包括零。它会检查输入中至少有一个数字在1到9之间。 3. 非正整数:`^((-\d+)|(0+))$` 这个表达式可以匹配非正整数,即负整数和零。它使用括号来分组负数和零的情况。 4. 负整数:`^-?[0-9]*[1-9][0-9]*$` 此正则表达式用来匹配负整数,允许前导零,并且至少有一个正数位。 5. 整数:`^-?\d+$` 这个正则表达式匹配所有整数,包括正数、负数和零。 6. 非负浮点数:`^\d+(\.\d+)?$` 用于匹配非负浮点数,包括正浮点数和零。点号后面可以有任意数量的数字。 7. 正浮点数:`"^(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$"` 这个正则表达式确保至少有一位小数并且至少有一个数字在1到9之间。 8. 非正浮点数:`"^((-\d+(\.\d+)?)|(0+(\.0+)?))$"` 匹配非正浮点数,包括负浮点数和零。 9. 负浮点数:`"^(-(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*)))$"` 用于匹配负浮点数,确保至少有一位小数并且至少有一个数字在1到9之间。 10. 浮点数:`"^(-?\d+)(\.\d+)?$"` 这是一个通用的浮点数匹配模式,包括正、负和零的浮点数。 11. 由英文字母组成的字符串: - `^[A-Za-z]+$` 大小写字母组成的字符串 - `^[A-Z]+$` 大写字母组成的字符串 - `^[a-z]+$` 小写字母组成的字符串 12. 由数字和英文字母组成的字符串:`^[A-Za-z0-9]+$` 这个表达式用于匹配包含数字和大小写字母的字符串。 13. 由数字、字母或下划线组成的字符串:`^\w+$` 匹配由字母、数字或下划线组成的字符串,通常用于识别变量名。 14. Email地址:`"^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$"` 这是一个常见的电子邮件地址验证正则表达式。 15. URL:`"^[a-zA-z]+://(\w+(-\w+)*)(\.(\w+(-\w+)*))*(\?\S*)?$"` 用于匹配URL格式的字符串。 16. 年-月-日日期格式: - `/^(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})$/` 这两个表达式分别用于验证两种不同的日期格式:年-月-日和月/日/年。 17. Emil:`"^([w-.]+)@(([[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.)|(([w-]+.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(]?)$"` 这个正则表达式是另一种形式的电子邮件地址验证。 18. 电话号码:`"(d+-)?(d{4}-?d{7}|d{3}-?d{8}|^d{7,8})(-d+)?$"` 用于匹配不同格式的电话号码,支持区域代码、连字符等。 这些正则表达式提供了C#中处理字符串的强大工具,可帮助开发者进行数据验证、提取特定信息等任务。了解并熟练运用它们,将极大地提高代码的质量和效率。