本篇内容主要讲解“什么是正则表达式中的 .*? 或 .*+ ”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“什么是正则表达式中的 .*? 或 .*+ ”吧!
创新互联服务项目包括贵池网站建设、贵池网站制作、贵池网页制作以及贵池网络营销策划等。多年来,我们专注于互联网行业,利用自身积累的技术优势、行业经验、深度合作伙伴关系等,向广大中小型企业、政府机构等提供互联网行业的解决方案,贵池网站推广取得了明显的社会效益与经济效益。目前,我们服务的客户以成都为中心已经辐射到贵池省份的部分城市,未来相信会继续扩大服务区域并继续获得客户的支持与信任!
正则表达式简介
正则表达式,又称规则表达式。(英语:Regular Expression,在代码中常简写为regex、regexp或RE),计算机科学的一个概念。正则表达式通常被用来检索、替换那些符合某个模式(规则)的文本。
许多程序设计语言都支持利用正则表达式进行字符串操作。例如,在Perl中就内建了一个功能强大的正则表达式引擎。正则表达式这个概念最初是由Unix中的工具软件(例如sed和grep)普及开的。正则表达式通常缩写成“regex”,单数有regexp、regex,复数有regexps、regexes、regexen。
这篇文章重点给大家介绍正则表达式中的 .*? 或 .*+ 的意思 ,具体内容如下所示:
最近要做一个提取文字特殊内容的工具,老是不会写正则表达,经常遇到.*? 或 .*+ 这些符号,网上查查,终于知道什么意思了,记录一下网上解释结果:
后边多一个?表示懒惰模式。
必须跟在*或者+后边用
如:
如果用正则匹配src中内容非懒惰模式匹配
src=".*"
匹配结果是:src="test.jpg" width="60px" height="80px"
意思是从="往后匹配,直到最后一个"匹配结束懒惰模式正则:
src=".*?"
结果:src="test.jpg"
因为匹配到第一个"就结束了一次匹配。不会继续向后匹配。因为他懒惰嘛。.表示除\n之外的任意字符
*表示匹配0-无穷
+表示匹配1-无穷
去掉括号实例
public class Test {
public static void main(String[] args) {
String s = "图片(img=32,34)http://www.sds.com/jpg(/img)
图片(img=32,34)http://www.sds.com/jpg(/img)";
System.out.println(s.replaceAll("\\[.+?\\]",""));
}
}
结果:
图片http://www.sds.com/jpg图片http://www.sds.com/jpg
总结
到此,相信大家对“什么是正则表达式中的 .*? 或 .*+ ”有了更深的了解,不妨来实际操作一番吧!这里是创新互联网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!