匹配单个字符
.可以匹配任何一个单个的字符
使用\(反斜杠)对元字符进行转义
匹配多个字符中的某一个
使用[]来定义一个字符集合,字符集合的匹配结果是能够与该集合里的任意一个成员相匹配的文本。
在[]中使用-来定义字符区间
常用的字符区间示例:[0-9][A-Za-z0-9]
使用^对字符集合进行取非操作,匹配不在集合区间里的一个字符
使用元字符
匹配空白字符
元字符 说明
[\b] 回退(并删除)一个字符(Backspace键)
\f 换页符
\n 换行符
\r 回车符
\t 制表符(Tab键)
\v 垂直制表符
匹配特定的字符类别 – 数字
\d 任何一个数字字符(等价于[0-9])
\D 任何一个非数字字符(等价于[^0-9])
\w 任何一个字母数字字符(大小写均可)或下划线字符(等价于[A-Za-z0-9_])
\W 任何一个非字母数字或非下划线字符(等价于[^A-Za-z0-9_])
\s 任何一个空白字符(等价于[\f\n\r\t\v])
\S 任何一个非空白字符(等价于[^\f\n\r\t\v])
匹配十六进制或八进制数值
在正则表达式里,十六进制数值要用前缀\x来给出
在正则表达式里,八进制数值要用前缀\0来给出
重复匹配
使用+后缀来匹配一个或多个字符
使用*后缀来匹配零个或多个字符
使用?后缀来匹配零个或一个字符
{n}后缀为重复匹配次数设定一个精确的值
{m, n}后缀为重复匹配次数设定一个区间
{m, }后缀匹配“至少重复多少次”
贪婪型元字符 懒惰型元字符
* + {n,} *? +? {n,}+
位置匹配
单词边界:
\b匹配的是一个位置:这个位置位于一个能够构成单词的字符(字母、数字和下划线,也就是与\w相匹配的字符)和一个不能用来构成单词的字符(也就是与\W相匹配的字符)之间。
\b匹配且只匹配一个位置,不匹配任何字符。
\B匹配非单词边界
字符串边界:
使用^来定义字符串的开头,使用$来定义字符串的结尾
多选结构
|是一个非常简洁的元字符,它的意思是“或”。我们能够把不同的子表达式组合成一个总的表达式,而这个总的表达式又能够匹配任意的字表达式。
多选结构的优先级很低
子表达式
把一个表达式划分为一系列的子表达式,可以把子表达式当作一个独立元素来使用。子表达式必须用(和)括起来
表达式的嵌套
回溯引用
回溯引用指的是模式的后半部分引用在前半部分中定义的子表达式
<[Hh]([1-6])>.*?</[Hh]\1>
<BODY>
<H1>Welcome to my Homepage</H1>匹配
Content is divided into two sections:<BR>
<H2>ColdFusion</H2>匹配
Information about Macromedia ColdFusion.
<H2>Wireless</H2>匹配
Information about Bluetooth, 802.11, and more.
<H2>This is not valid HTML</H3>不匹配
</BODY>
Hello, ben@forta.com is my email address.
(\w+[\w\.]*@[\w\.]+\.\w+)
<A HREF=“mailto:$1”>$1</A>
Hello, <A HREF=“mailto:ben@forta.com”>ben@forta.com</A> is my email address.
前后查找
使用?=进行向前查找
使用?<=进行向后查找
使用(?!)进行向前查找取非
使用(?<!)进行向后查找取非
see Jeffs book
s/(?<=\bJeff)(?=s\b)/’/g
see Jeff’s book
嵌入条件
(?(backreference)trueregex) 条件(if then)
(?(backreference)trueregex|falseregex) 条件(if then else)
分享到:
相关推荐
本文将深入探讨C#中的正则表达式基础、语法规则、常见操作以及如何在实际项目中应用它们。 一、正则表达式基础 正则表达式(Regular Expression)是一种模式匹配语言,它使用特殊的字符序列来描述字符串的模式。在...
### 正则表达式总结大全 #### 一、正则表达式概述 ...以上是对正则表达式基础知识的总结,包括其基本概念、常见符号以及实际应用案例。掌握这些基础可以帮助开发者更高效地处理字符串相关的任务。
一、正则表达式基础 1. 基本字符: - 字符匹配:"."代表任意单个字符。 - 重复匹配:"*"表示前面的字符可以出现零次或多次,"+"表示至少一次,"?"表示零次或一次。 - 范围匹配:"[abc]"表示匹配a、b或c。 - ...
#### 正则表达式基础概念 在JavaScript(简称JS)中,正则表达式是一种强大的文本处理工具,它由一系列字符和特殊符号组成,用于匹配字符串中的模式。正则表达式不仅可以用于字符串搜索、替换等操作,还能帮助...
总结的正则表达式,各种类型的正则表达式,对您有很大的帮助
以上正则表达式涵盖了从简单到复杂的各种应用场景,为文本分析、数据验证和模式识别提供了坚实的基础。然而,值得注意的是,正则表达式的灵活性和强大功能往往伴随着复杂性和潜在的陷阱,特别是在处理异常情况或极端...
C#的正则表达式是用于处理字符串的强大工具,它允许程序员通过模式匹配来执行复杂的文本操作。以下是一些常见的C#正则...对于初学者来说,理解并灵活运用这些基础模式是至关重要的,它们是编写高效文本处理程序的基础。
以下是对C#中常用正则表达式的一些总结: 1. **基础语法** - 字符匹配: - `.`:匹配任意单个字符,除了换行符。 - `\d`:匹配数字,等同于`[0-9]`。 - `\D`:匹配非数字字符,等同于`[^0-9]`。 - `\w`:匹配...
一、基础概念 1. 字符类:正则表达式由各种字符构成,包括字母、数字、特殊符号等。例如,"."代表任意单个字符,"\d"代表数字,"\w"代表单词字符(字母、数字或下划线)。 2. 量词:用于指定某个字符或字符组出现的...
1. **基础概念** - **模式**:正则表达式模式是描述一组字符串的模式,例如`\d{3}-\d{4}`表示匹配美国电话号码格式。 - **匹配器**:Regex类是正则表达式的匹配器,它负责执行模式匹配操作。 - **元字符**:如`.`...
**正则表达式基础 - 特殊字符**: - `'.' (点,dot)`: 匹配除换行符`\n`外的任何单个字符,`DOTALL`标志允许它匹配换行符。 - `'^' (Caret)`: 匹配字符串或行的开始(在`MULTILINE`模式下)。 - `'$'`: 匹配字符串或...
下面是对"常用的正则表达式总结"的详细解读。 1. **基础字符类**: - `.`:匹配任意单个非换行符的字符。 - `\d`:等价于 `[0-9]`,匹配任何数字。 - `\D`:匹配任何非数字字符。 - `\w`:等价于 `[a-zA-Z0-9_]...
1. **基础符号** - **`.`**:匹配任意单个字符,除了换行符。 - **`^`**:匹配输入字符串的开始位置,如果用在字符类内部,则表示非该字符。 - **`$`**:匹配输入字符串的结束位置,同样,如果在字符类内,表示...
### 常用正则表达式总结及技术资料 #### 一、正则表达式的概述与基础符号 正则表达式是一种强大的文本处理工具,在文本搜索、替换等操作中非常实用。下面是一些常见的正则表达式基础符号及其含义: 1. **`.` (点)...
包含的文件如`JAVA 正则表达式总结.edg`可能是文档的编辑文件,`文档截图1.jpg`、`文档截图2.jpg`提供了视觉辅助,`文档目录.jpg`帮助理解文档结构,`文档说明.txt`可能提供了文档的使用说明,而`ElecAssist_160201...
资料可能涵盖了JSP的基础语法、EL和JSTL的使用,以及如何在JSP中集成正则表达式进行数据处理和验证。"老师的总结"部分可能是对关键概念和技巧的提炼,这对于学习者来说是非常有价值的复习资源。 "regex.bmp"可能是...