C#正则表达式整理备忘.doc
需积分: 0 7 浏览量
更新于2009-10-25
收藏 274KB DOC 举报
【C#正则表达式整理备忘】
C#正则表达式是一种强大的文本处理工具,广泛应用于字符串的验证、搜索和替换。以下是一些关键概念和语法的详细说明:
1. **逐字字符串(@)**
在C#中,使用`@`符号可以创建逐字字符串(verbatim string literal)。这表示字符串中的反斜杠 `\` 不会被视为转义字符,而是直接解释为文本。例如,`@"D:\My Huang\My Doc"` 可以正确地包含路径,而无需额外的转义。
2. **基本的语法字符**
- `\d` 匹配0-9的数字。
- `\D` 匹配非数字字符。
- `\w` 匹配字母、数字和下划线,相当于单词字符。
- `\W` 匹配非单词字符。
- `\s` 匹配空白字符,包括换行、回车、制表符等。
- `\S` 匹配非空白字符。
- `.` 匹配除换行符外的任意字符。
- `[…]` 匹配括号内的字符集合。
- `[^…]` 匹配不在括号内的字符。
3. **定位字符**
- `^` 表示字符串的开始。
- `$` 表示字符串的结束。
- `\b` 匹配单词边界。
- `\B` 匹配非单词边界。
- `\A` 和 `\z` 与 `^` 和 `$` 类似,但更严格地限定在字符串的开头和结尾。
- `\Z` 匹配字符串末尾,或换行符前。
4. **重复描述字符**
- `{n}` 重复前面的字符n次。
- `{n,}` 重复至少n次。
- `{n,m}` 重复n到m次。
- `?` 重复0或1次。
- `+` 重复1次或更多次。
- `*` 重复0次或更多次。
5. **择一匹配**
使用 `(|)` 符号可以选择匹配括号内的多个表达式之一。例如,`(ab|xy)` 匹配 "ab" 或 "xy"。
6. **特殊字符的匹配**
特殊字符可以通过在其前添加反斜杠 `\` 进行转义,如`\(`、`\)`、`\+`等,使其失去特殊含义。
7. **组与非捕获组**
`(…)` 用来创建一个捕获组,捕获的文本可以在后续操作中使用。 `(?:…)` 创建非捕获组,不保存捕获的文本。
8. **贪婪与非贪婪**
默认情况下,正则表达式引擎是贪婪的,会尽可能多地匹配字符。添加 `?` 到 `*`, `+`, 或 `{n,m}` 后可以使匹配变得非贪婪,即尽可能少地匹配字符。
9. **回溯与非回溯**
使用 `(?>…)` 创建非回溯断言,防止引擎在无法匹配时回溯。
10. **正向预搜索与反向预搜索**
- 正向预搜索 `(?=…)` 匹配但不包含紧跟在后面的模式。
- 负向预搜索 `(?!…)` 匹配不紧跟在后面的模式。
- 反向预搜索 `(?<=…)` 和 `(?!<…)` 分别匹配前文满足和不满足特定条件的位置。
11. **十六进制字符范围**
- `\xXX` 匹配编号为0-255的字符。
- `\uXXXX` 匹配任何字符,使用4位16进制数表示。
12. **匹配[0,100]的示例**
要匹配0到100之间的整数或浮点数,需考虑各种情况,如允许前导零、小数点、小数部分等,同时排除无效输入。完整的正则表达式可能会相当复杂,通常需要结合实际需求来编写。
这些是C#正则表达式的一些基本要素,它们提供了灵活的字符串处理能力。通过组合这些元素,开发者可以构建出复杂的模式来处理各种文本处理任务。理解和掌握正则表达式对于提升C#编程能力至关重要。

sohopk
- 粉丝: 1
最新资源
- 面对科技平台发展的三大痛点,如何借助AI+数智应用手段实现突破与升级?.docx
- 企业科技创新服务平台如何通过AI+数智应用实现可持续发展?.docx
- 企业科技创新平台如何通过AI+数智应用确保资源的丰富性和有效性?.docx
- 企业科技创新平台在AI+时代面临哪些挑战,如何解决?.docx
- 企业如何借助AI+数智应用科技创新管理平台实现低成本、高效的创新管理?.docx
- 企业如何通过AI+数智应用构建可持续运营的科技创新服务体系?.docx
- 企业如何利用AI+数智应用工具建设高效的科技创新平台?.docx
- 如何借助AI+数智应用构建区域科技创新服务体系以促进产业升级?.docx
- 如何借助AI+数智应用构建高效的科技创新管理服务体系,解决资源整合与服务可持续性难题?.docx
- 企业如何通过AI+数智应用科技创新管理提升核心竞争力?.docx
- 如何借助AI+数智应用解决科技平台面临的可持续性挑战?.docx
- 如何借助AI+数智应用解决科技平台面临的资源、服务和可持续性问题?.docx
- 如何借助AI+数智应用技术转移服务效率提升工具应对海量技术信息筛选难题?.docx
- 如何借助AI+数智应用解决科技创新平台服务效率低、资源分散的问题?.docx
- 如何借助AI+数智应用科技平台优化企业创新管理与决策?.docx
- 如何借助AI+数智应用科研创新管理平台解决科技平台资源分散、服务低效的难题?.docx