`

正则表达式学习笔记(1) 行的开始和结束、字符组、连字符、脱字符、用"."去匹配任意字符

阅读更多
原帖地址
http://www.blogjava.net/ycyk168/archive/2008/11/19/241464.html
引用

行的开始和结束 开始符号:^ 结束符号:$  如:^cat 应该理解为以c作为一行的第一个字符,紧接着是a,然后是t
例如:String str = "catabdcatdetfcat"
^cat : 验证该行以c开头紧接着是a,然后是t
cat$ : 验证该行以t结尾倒数第二个字符为a倒数第三个字符为c
^cat$: 以c开头接着是a->t然后是行结束:只有cat三个字母的数据行
^$   : 开头之后马上结束:空白行,不包括任何字符
^    : 行的开头,可以匹配任何行,因为每个行都有行开头
--------------------------------------------------------------------------------------------------------------
字符组:[]表示:"或" 如:[abc]:a或者b或者c
例如:String str = "My Name is YangKai";
a[mn] : 查找a后面是m或者n的单词
[Nn][ag] : 查找N或者n后面是a或者g的单词
--------------------------------------------------------------------------------------------------------------
字符组内的连字符:- 表示:范围从开始到结束,
连字符'-'只有出现在字符组内部的时候才是连字符,其他情况只表示字符:"-"没有特殊意义
如果字符'-'出现在字符组内的第一个位置或者出现在字符组内的脱字符"^"之后,则该字符不是连字符只是一个字符而已
例如:String num = "012C34A5B!#@$-%$^%&&*&(-)*)&6FR7GD89";
[2-6] : 查找2到6之间的数字
[A-R] : 查找从A到R之间的字符
[2-6A-R] : 查找从2到6从A到R之间的字符
[2-6A-R!@^&*] : 查找从2到6从A到R之间的字符和!@^&*等特殊字符
[-2-6A-R]   :查找从2到6从A到R之间的字符和-
---------------------------------------------------------------------------------------------------------------
脱字符:^ :当^出现在字符组内的第一个位置时表示:排除,即:除了....之外的,
如果脱字符没有在[]字符组的第一个位置,那么该^仅表示一个字符,没有特殊意义
[^0-9] : 查找字符串中除数字外的字符
[^2-6A-R] : 查找字符串中除了2到6之间的数字和A-R之间的字符外的所有字符
[^-2-6A-R] : 查找字符串中除了2到6之间的数字和A-R之间的字符和"-"外的所有字符(此处"-"只是一个字符,没有连字符的含义)
注意一下这种情况:
String str = "abcdabcd";
如果我们用表达式:d[^0-9] 只能匹配到字符串中的da,而不能匹配结尾处的d,因为结尾处的d没有任何东西让脱字符^去排除
如果我们在结尾加上一个空格的话,就可以匹配到了
-----------------------------------------------------------------------------------------------------------------
用"."去匹配任意字符
例如:03/19/76 03-19-76 03.19.76 可以用03[-/.]19[-/.]76去匹配,同样可以用03.19.76去匹配,但是03.19.76也可能匹配到
03-19A76,因为"."可以匹配任何字符
注意:如果"."放在字符组外面的话表示元字符,但是如果放在字符组里面,则表示一个普通的"."
分享到:
评论

相关推荐

    正则表达式学习笔记

    ### 正则表达式学习笔记 #### 一、正则表达式概述 正则表达式是一种强有力的模式匹配工具,广泛应用于各种编程语言中,用于文本处理。正则表达式允许用户定义复杂的查找模式,这对于数据验证、搜索和替换操作特别...

    [小小明]Python正则表达式全套笔记v0.3(1.8万字干货)

    本文档是小小明个人笔记,为学习和使用正则表达式提供了一个系统的资源。 Python正则表达式全套笔记v0.3 1.1 作者简介 小小明是数据处理专家,擅长解决各种复杂数据处理问题,并且提供了个人笔记,涵盖了正则...

    java正则表达式学习笔记

    以上列举了一些常见的正则表达式应用场景及其匹配规则,可以帮助开发者更好地理解和掌握Java正则表达式的使用技巧。通过这些示例,我们可以看到正则表达式在实际开发中的强大作用,并且能够灵活应用于各种复杂的字符...

    javascript正则表达式学习笔记

    这篇学习笔记将深入探讨JavaScript正则表达式的概念、语法和实际应用。 一、正则表达式基础 1. 创建正则表达式: - 字面量表示法:`/pattern/flags` - 构造函数:`new RegExp('pattern', 'flags')` 2. 常见的...

    正则表达式学习笔记正则表达式学习笔记

    ### 正则表达式学习笔记 #### 一、正则表达式概述 正则表达式是一种强大的文本处理工具,能够帮助我们完成各种复杂的字符串匹配、提取、替换等操作。正则表达式通过定义一系列规则来匹配字符串中的模式,广泛应用...

    正则表达式基础学习笔记

    正则表达式(Regular Expression,简称regex)是用于匹配字符串的一种模式,广泛应用于文本处理、数据验证、搜索和替换等场景。它通过一种简洁而强大的语法来定义一系列字符或字符组合,帮助程序员快速准确地定位和...

    正则表达式学习笔记详解!

    ### 正则表达式学习笔记详解 正则表达式(Regular Expression)是一种强大的文本匹配工具,广泛应用于数据处理、文本搜索、格式验证等场景。以下是对给定文件中提到的各种正则表达式的详细解析,旨在帮助读者深入...

    关于js正则表达式学习笔记(自己整理的)

    JavaScript中的正则表达式是处理字符串的强大工具,用于匹配、替换、分割文本。它们在编程中扮演着不可或缺的角色,尤其在验证用户输入、提取数据、格式化内容等方面。以下是对正则表达式的基础知识和常见用法的详细...

    正则表达式学习笔记总结

    正则表达式是一种强大的文本处理工具,用于匹配、查找、替换和提取字符串中的特定模式。在编程语言中,正则表达式广泛应用于数据验证、文本分析和数据提取等场景。以下是一些常用的正则表达式模式及其应用: 1. ...

    6正则表达式笔记[借鉴].pdf

    正则表达式是一种强大的文本处理工具,用于在字符串中进行模式匹配、搜索、替换和提取信息。它在软件开发中广泛应用于数据验证、文本处理、输入校验等场景。正则表达式通过特殊的语法和运算符,允许程序员构建灵活且...

    正则表达式学习笔记小结分享

    元字符在正则表达式中具有特殊含义,如 `.` 可以匹配任意单个字符(除了换行符),`\w` 匹配字母、数字和下划线(等同于 `[A-Za-z0-9_]`),`\d` 匹配数字(等同于 `[0-9]`)。元字符还包括 `\s`(匹配空白字符)、`...

    (正则表达式)学习笔记

    正则表达式(Regular Expression,简称regex)是用于匹配字符串的一种模式,广泛应用于文本处理、数据验证、搜索和替换等场景。在这个“正则表达式”学习笔记中,我们将深入探讨这一强大的工具。 1. **基础概念** ...

    JS正则表达式入门笔记实例

    JavaScript中的正则表达式是处理字符串的强大工具,用于匹配、替换、分割等操作。这篇入门笔记实例将带你深入了解正则表达式的使用。 1. **正则表达式基础** - **模式定义**:正则表达式由特殊字符(元字符)和...

    正则表达式.7z

    本压缩包"正则表达式.7z"包含了一份"笔记.txt",这份笔记详细介绍了正则表达式的概念和使用技巧,对于后续学习正则表达式或解决相关问题有着极高的参考价值。 首先,我们需要了解正则表达式的基石——元字符。元...

    PHP 笔记001 - 字符串、正则表达式

    正则表达式则是一种强大的文本匹配工具,它允许我们在字符串中搜索、匹配和提取特定的文本模式。 ### 字符串处理 PHP提供了丰富的字符串处理函数,从基本的字符操作到复杂的文本转换,涵盖了日常开发中常见的需求...

    正则表达式系统教程.RAR

    例如,你将学习到如何使用"."来匹配任何字符,"\d"代表数字,"^"和"$"表示字符串的开始和结束,"*"、"+"、"?"作为量词表示重复次数。 《正则表达式例子大全.txt》则是实践案例的集合,涵盖了各种实际应用场景,比如...

Global site tag (gtag.js) - Google Analytics