正则表达式中.*?或.*+是什么意思
这篇文章主要介绍了正则表达式中 .*? 或 .*+ 是什么意思,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。
创新互联建站是一家以网站设计建设,微信小程序开发、网站开发设计,网络软件产品开发,企业互联网推广服务为主的民营科技公司。主要业务涵盖:为客户提供网站策划、网站设计、网站开发、域名申请、网站优化排名、卖友情链接等服务领域。凭借建站老客户口碑做市场,建设网站时,根据市场搜索规律和搜索引擎的排名收录规律编程,全力为建站客户设计制作排名好的网站,深受老客户认可和赞誉。
正则表达式简介
正则表达式,又称规则表达式。(英语: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://scyanting.com/article/jdegij.html