`
ycyk_168
  • 浏览: 97281 次
  • 性别: Icon_minigender_1
  • 来自: 郑州
社区版块
存档分类
最新评论

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

阅读更多

行的开始和结束 开始符号:^ 结束符号:$  如:^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,因为"."可以匹配任何字符
注意:如果"."放在字符组外面的话表示元字符,但是如果放在字符组里面,则表示一个普通的"."

 

分享到:
评论

相关推荐

    正则表达式学习笔记总结

    以前学习了正则表达式,总结一下查找起来也很方便,包括各种常用字符串的验证:如邮箱等

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

    关于学习PHP中字符串与正则表达式的学习笔记、心得,如果需要就下载吧

    Python字符串与正则表达式学习笔记

    字符串2.1 字符串的创建2.2 字符串与数值的相互转换2.3 字符串的连接、复制和转义2.4 字符串的替换、分隔与合并2.5 Python的字符串常用内建函数2.6 字符串截取3. 正则表达式3.1 正则表达式基础知识3.2 正则表达式...

    老男孩老师-Linux正则表达式实战 学习笔记

    根据老男孩老师视频教程《Linux正则表达式实战》的精彩讲解,进行了学习笔记记录,主要讲解Linux三剑客中的grep用法、捎带sed的讲解笔记。 学习笔记进行了规整,相信Linux运维工作者能够一目了然笔记的内容。 (1...

    超经典正则表达式测试工具

    功能(1)测试正则表达式; (2)常用表达式方法使用 (3)测试字符串的字节数; (4)学习正则的学习笔记; (5)正则表达式参考手册;

    Shell正则表达式学习笔记

    正则表达式是用于描述字符排列和匹配模式的一种语法规则。它主要用于字符串的模式分割、匹配、查找及替换操作。 二、正则表达式与通配符 1. 正则表达式 用来在文件中匹配符合条件的字符串,正则表达式是“包含匹

    正则表达式学习笔记

    正则表达式学习笔记 正则表达式(regular expression)描述了一种字符串匹配的模式,可以用来检查一个串是否含 有某种子串、将匹配的子串做替换或者从某个串中取出符合某个条件的子串等。 列目录时, dir *.txt或...

    C#正则表达式整理备忘

    正则表达式学习很火热很潮流,当时在CSDN一天就能看到好几个正则表达式的帖子,那段时间借助论坛以及Wrox Press出版的《C#字符串和正则表达式参考手册》学习了一些基础的知识,同时也为我在CSDN大概赚了1000分,今天...

    正则表达式及常用匹配表达式

    一、正则表达式 二、需要进行转义字符的元字符有 三、优先级 四、举例 ·replace(/^/mg,"#") 可在每行首添加一个“#” ·/^\s*$/ 匹配空行 ·/\b([a-zA-Z]+) \1\b/ 匹配两个相邻的相同单词 ·html标签匹配:/...

    php正则表达式学习笔记

    php正则表达式学习笔记分享: 1.创建正则表达式 $regex = ‘/\d/i’; 与JavaScript中的第一个方式有点像,只是这里的话是个字符串。  2.正则表达式中的特殊字符 特殊字符有: . \ + * ? [ ^ ] $ ( ) { } = ! < ...

    java 正则表达式

    Java 正则表达式学习笔记。Java 正则表达式学习笔记Java 正则表达式学习笔记v

    暑假培训学习笔记之 java正则表达式

    Java中使用正则表达式实现字符串匹配 .。。

    python 正则表达式语法学习笔记

    正则表达式(regular expression)描述了一种字符串匹配的模式(pattern),可以用来检查一个串是否含有某种子串、将匹配的子串替换或者从某个串中取出符合某个条件的子串等。 Python 自1.5版本起增加了re 模块,它...

    js正则表达式学习笔记

    正则表达式:对字符串中的信息实现查找、替换和提取操作。(不支持注释和空白,必须写在一行内) 正则表达式的创建:包含在一对斜杠之间的字符(直接量语法) 例如: var pattern = /s$/; // 创建一个正则来匹配...

    正则表达式 学习笔记

    \w 表示0~9 a~z A~Z和__中的任意【一个】字符->[a-z0-9A-Z]自定义原子列表 \W 表示除了0~9 a~z A~Z和__之外的任意【一个】字符->[^a-z0-9A-Z]自定义排除列表 . 表示任意【一个】字符,除了\n #元字符 [自定义原子

    js 正则表达式学习笔记之匹配字符串

    主要介绍了js 正则表达式匹配字符串,需要的朋友可以参考下

    Python—-正则表达式

    匹配前面出现的正则表达式任意多次,包含0次 *:[abc]* 匹配前面出现的正则表达式0次或1次 ?:a? 匹配前面出现的正则表达式一次或多次+:a+ \d:匹配任何数字 \s:匹配任何空白字符 \w:匹配任何数字、字母、字符==...

    javascript学习笔记(八)正则表达式

    正则表达式是一种文本模式,包括普通字符(例如,a 到 z 之间的字母)和特殊字符(称为“元字符”)。模式描述在搜索文本时要匹配的一个或多个字符串。 首先推荐几个正则表达式编辑器  Debuggex :...

Global site tag (gtag.js) - Google Analytics