Java中正则表达式 .* 的含义讲解
Java中正则表达式 .* 的含义
两者的概念并不冲突
一、前置概念
.
:匹配1个字符,不包括0个。*
:限定前面的符号匹配 0 次到无穷次。*
号是限定符,起限定前面值的作用,不能单独使用,前面必须要有其他值,如"abc".matches("*");
会报错,原因是*
号不能单独使用。
二、.*的含义
- 首先,
.
代表匹配1个字符;*
是限定符,表示限定前面的值匹配 0 次或多次。 - 然后,当
*
号作用于前面的.
号时,就相当于*
号把.
号重复了 0 次或无穷次。 - 所以
.*
的含义为:可以匹配长度任意的字符串(包括 0 个)。
java正则表达式中.*代表什么意思
后边多一个?表示懒惰模式。
必须跟在*或者+后边用
如:<img src="test.jpg" width="60px" height="80px"/>
如果用正则匹配src中内容非懒惰模式匹配
src=".*"
匹配结果是:src="test.jpg" width="60px" height="80px"
意思是从="往后匹配,直到最后一个"匹配结束
懒惰模式正则:
src=".*?"
结果:src="test.jpg"
因为匹配到第一个"就结束了一次匹配。不会继续向后匹配。因为他懒惰嘛。
.表示除\n之外的任意字符
*表示匹配0-无穷
+表示匹配1-无穷
正则表达式*,+,?的区别,举例说明
一、*表示匹配前面的字符0个或多个
二、+表示前面的字符1个或多个
PS:表示只能是多个数字,只能是多个整数,只能是多个字母,一般用*,当然+也可以,但有时候会出错
三、?表示放在其他字符后面表示前面的字符可以有,也可以没有,或者放在*、+后面表示匹配尽可能少的字符
例如:字符串fooooo,正则来fo*和fo+会匹配整个字符串,
fo+? 匹配fo,
fo*? 匹配f
上面这个例子就可以让你理解+,*的区别
到此这篇关于Java中正则表达式 .* 的含义的文章就介绍到这了,更多相关java正则表达式内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
SpringCloud Ribbon与OpenFeign详解如何实现服务调用
这篇文章主要介绍了SpringCloud Ribbon与OpenFeign实现服务调用的过程,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2022-09-09knife4j3.0.3整合gateway和注册中心的详细过程
这篇文章主要介绍了knife4j3.0.3整合gateway和注册中心的详细过程,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下2023-03-03利用HttpUrlConnection 上传 接收文件的实现方法
下面小编就为大家带来一篇利用HttpUrlConnection 上传 接收文件的实现方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧2016-11-11
最新评论