`
北极的。鱼
  • 浏览: 158912 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

正则表达式--分支条件

阅读更多

目前在学正则表达式,遇到分支条件这块,实在不是很明白。

请各位帮忙指点下。

 

举例:

匹配IP地址的表达式:((25[0-5]|2[0-4]\d|[01]?\d?\d)\.){3}(25[0-5]|2[0-4]\d|[01]?\d?\d)

示例地址是:251.231.10.253。

匹配结果是4个:a) 251.231.10.253    b)10. (注意这个结果有个点)    c)10     d)253

疑惑:为什么会有4个值?分支条件不是从左往右匹配么,如果第一个匹配成功了,后面就不应该匹配了啊。那么为什么会是这4个结果呢?

 

另外一个例子:

正则表达式:\w+-\d{4}-\d{2}-\d{2}|\w+-\d{4}

匹配对象:Ggicci-1991-11-10 and Tengery-1991

匹配结果:a) Ggicci-1991-11-10     b) Tengery-1991

疑惑:为什么会有2个结果啊?分支的第一部分不是已经匹配到结果了么,那么就不应该用分支的第二部分去匹配啦。

讲了越详细越好。。

 

分享到:
评论

相关推荐

    正则表达式(Deelx版)|正则表达式(Deelx版)支持库

    正则表达式(Deelx版)是一种强大的文本处理工具,它允许程序员和用户通过预定义的模式来匹配、查找、替换或者分析字符串。Deelx版是专门为提高正则表达式性能和功能而设计的一个支持库,适用于各种编程语言和应用场景...

    精通正则表达式-第三版-简体中文版

    4. **扩展功能**:一些语言如Perl、PCRE(Perl兼容正则表达式)提供了更复杂的特性,如递归正则、条件分支等。 【实践应用】 - **用户输入验证**:在网络表单中,正则表达式常用于验证用户输入的数据格式,如邮箱...

    日期正则表达式(很实用)

    ### 日期正则表达式详解 #### 一、基本概念 正则表达式是一种用于文本模式匹配的强大工具,在处理字符串时极为有用。日期格式验证是正则表达式常见应用场景之一,尤其是在表单验证、数据清洗等领域。本文将详细...

    正则表达式验证器,验证常用的编程语言的正则表达式

    正则表达式(Regular Expression,简称regex)是用于匹配字符串的一种模式,广泛应用于文本处理、数据验证、搜索和替换等场景。在编程中,正确构造和理解正则表达式至关重要,因为它们能帮助我们高效地处理字符串...

    非常好的正则表达式验证工具

    正则表达式(Regular Expression,简称regex)是用于匹配字符串的一种模式,广泛应用于文本处理、数据验证、搜索和替换等场景。在编程中,正确使用正则表达式能够极大地提高代码的效率和准确性。"非常好的正则表达式...

    正则表达式详细文档CHM版.rar

    正则表达式是一种强大的文本处理工具,用于在字符串中匹配、查找、替换或提取特定模式。它是编程语言中不可或缺的一部分,被广泛应用于数据验证、文本分析、搜索与替换等场景。"正则表达式详细文档CHM版"包含了丰富...

    正则表达式C语言源码

    PCRE库不仅支持基本的正则表达式操作,如字符匹配、重复、选择等,还提供了高级特性,如回溯、后向引用、条件分支等。 在C语言中,使用PCRE库通常涉及以下几个步骤: 1. **头文件引入**:在C代码中,首先需要包含...

    汇编编写的正则表达式判断程序

    5. **条件分支和循环**:正则表达式匹配涉及大量的条件判断和循环,如IF-THEN-ELSE结构和循环控制指令如JMP、LOOP等。 6. **内存管理**:由于汇编语言没有内置的垃圾回收机制,程序员需要手动分配和释放内存,这在...

    C# 正则表达式总结

    4. 选择与分支条件: - `expr1|expr2`:匹配expr1或expr2。 五、正则表达式测试与调试 在C#中,可以使用`Regex.IsMatch(input, pattern)`来检查一个字符串是否符合特定模式。对于更复杂的测试,可以编写完整的C#...

    中文正则表达式简单易懂

    ### 正则表达式在Python中的应用 #### 一、正则表达式的概念与起源 正则表达式(Regular Expression,简称RE),是一种强大的文本处理工具,在计算机科学领域有着广泛的应用。它允许用户灵活地检查或者操作字符串...

    遨游在正则表达式的海洋

    ##### 分支条件 - **`|`:** 管道符表示逻辑或操作。 - 例如,匹配IP地址可以使用以下表达式:`(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9])\.`,其中`|`用于组合多个条件。 通过以上介绍,我们...

    30分钟入门正则表达式

    标题 "30分钟入门正则表达式" 涉及的是一个快速学习正则表达式的基本教程,适合初学者在短时间内掌握基本概念和用法。正则表达式是一种强大的文本处理工具,常用于数据验证、搜索与替换、文本分析等多种场景。 描述...

    pcre正则表达式库

    **正则表达式库PCRE详解** PCRE(Perl Compatible Regular Expressions)是一个著名的开源库,主要用于处理正则表达式。这个库由Philip Hazel开发,它的设计目标是尽可能地兼容Perl语言中的正则表达式语法和行为。...

    正则表达式简明参考.pdf

    分支条件允许我们使用逻辑运算符“|”来匹配几个表达式中的任意一个。例如,表达式ab|cd可以匹配字符串"ab"或"cd"。 分组使我们能够在正则表达式中捕获和提取子字符串。分组可以使用小括号()来创建。自动命名分组是...

    C#正则表达式专题学习(很不错)附正则测试工具

    2. 避免回溯:合理使用非贪婪模式和避免使用不必要的分支条件,可提高正则表达式的运行效率。 六、正则表达式测试工具 1. 在提供的压缩包中,"RegexTester.exe"是一个正则表达式测试工具,可以帮助开发者实时测试和...

Global site tag (gtag.js) - Google Analytics