Java 正则表达式详解
来源:互联网 发布:java邮箱的正则表达式 编辑:程序博客网 时间:2024/06/06 06:51
序言:前两天闲来无事,想起来好久都没回去过学校了(Lz还是个没毕业的孩子>_<)而且早就听说学校新盖的图书馆很高大上,所以就想着去泡泡图书馆,装装逼什么的。
后来走着走着,就看到了IT类的资料,然后就顺便翻了几本看看,然后就看到了Java的正则表达式,因为之前项目中很多地方有用到正则的地方,但是每次都是去网上copy人家的,所以就想着得把这一块好好弄懂,以后自己写正则。以下是自己看完书之后的一些见解,如果有更正确的理解,还请留下你的评论
1、什么是正则表达式?
正则表达式的定义:这是一种字符串的语法规则,是一种可以用于模式匹配和替换的规则,主要用于文本和字符串的处理(匹配,查找,替换,判断字符串)。一个正则表达式是由普通的字符(a~z)以及特殊字符(元字符)组成的文字模式,用以描述在查找文字主体时待匹配的一个或多个字符串。下面我们会介绍一些常用的元字符
2、正则表达式的元字符
元字符的定义:元字符:元字符使得正则表达式具有处理能力,指的是那些在正则表达式中具有特殊意义的专用字符,可以规定其前导字符在目标对象中的出现模式
上面的表中,基本上就是一些比较常用的元字符,我们需要注意元字符在正则表达式中的写法,不能直接用元字符来编写我们的正则程序
3、正则表达式中的方括号[]
元字符可以是放在[]中的任意单个字符(如[a]表示匹配单个小写字符a),也可以是字符序列(如[a-d]表示匹配a-d即a,b,c,d中的任意一个字符,而\w表示任意英文字母、数字及下划线)。例如:regex=”[159]ABC”,那么”1ABC”,”5ABC”,”9ABC”都是与正则表达式regex匹配的字符,方括号的含义如下:
注:方括号内允许嵌套,可以进行交,并,差运算
4、正则表达式中的限定符
在使用正则表达式时,我们知道元字符一般只能匹配一个位置或一个字符,如果需要某一类型的元字符多次输入,逐个输入,或是要匹配多个字符的时候就相当麻烦,这个时候我们可以使用正则表达式的限定符来重复输入。例如:regex=”hello[246]?”,那么”hello”,”hello2”,”hello4”,”hello6”都是与regex匹配的字符串,下面是一些常见的限定符
然后用法的话相信大家不会陌生吧:
String regex="自己定义的正则表达式";String test="需要正则的字符串对象";boolean isMatch=test.matches(regex);if(isMatch){ //test为匹配成功的数据}else{ //test为匹配失败的数据}
可能有些人会说,我经常用到的正则表达式中有Pattern和Matcher两个类,这两个类是干嘛的呢?
Pattern: 一个Pattern是一个正则表达式经编译后的表现模式。
Matcher: 一个Matcher对象是一个状态机器,它依据Pattern对象做为匹配模式对字符串展开匹配检查。
首先一个Pattern实例订制了一个所用语法与PERL的类似的正则表达式经编译后的模式,然后一个Matcher实例在这个给定的Pattern实例的模式控制下进行字符串的匹配工作。
好了,上述就是前两天啃书所获得的经验值,不得不说书还是个非常好的东西。
这是我建的一个android小白的群,各位有兴趣的小白欢迎加群共同学习,也欢迎各位大神进群指导,共勉。群号:541144061
- Java正则表达式详解
- Java正则表达式详解
- Java正则表达式详解
- Java正则表达式详解
- Java正则表达式详解
- java正则表达式详解!
- Java正则表达式详解
- Java正则表达式详解
- Java正则表达式详解
- Java正则表达式详解
- Java正则表达式详解
- Java正则表达式详解
- Java正则表达式详解
- Java正则表达式详解
- Java正则表达式详解
- Java正则表达式详解
- Java正则表达式详解
- Java正则表达式详解
- 极光推送集成Module中遇到的坑
- Android TV开发总结(七)构建一个TV app中的剧集列表控件
- Redis主从同步,读写分离
- Iris的R语言命令工具箱(1)
- Linux安装MongoDB过程,随Linux系统启动
- Java 正则表达式详解
- Github上的项目之Git操作
- NSTimer详解
- 写给小白的android基础面试笔试题(一)
- 个人新年感悟
- 写给小白的android基础面试笔试题(二)
- 读书笔记——周鸿伟自述
- Android自定义view之属性动画初见
- 热更新hot update大纲