主页 > 知识库 > 正则表达式中的 .*? 或 .*+ 的意思

正则表达式中的 .*? 或 .*+ 的意思

热门标签:银行业务 阿里云 团购网站 Linux服务器 电子围栏 服务器配置 科大讯飞语音识别系统 Mysql连接数设置

正则表达式简介

正则表达式,又称规则表达式。(英语:Regular Expression,在代码中常简写为regex、regexp或RE),计算机科学的一个概念。正则表达式通常被用来检索、替换那些符合某个模式(规则)的文本。
许多程序设计语言都支持利用正则表达式进行字符串操作。例如,在Perl中就内建了一个功能强大的正则表达式引擎。正则表达式这个概念最初是由Unix中的工具软件(例如sed和grep)普及开的。正则表达式通常缩写成“regex”,单数有regexp、regex,复数有regexps、regexes、regexen。

这篇文章重点给大家介绍正则表达式中的 .*? 或 .*+ 的意思 ,具体内容如下所示:

最近要做一个提取文字特殊内容的工具,老是不会写正则表达,经常遇到.*? 或 .*+ 这些符号,网上查查,终于知道什么意思了,记录一下网上解释结果:

后边多一个?表示懒惰模式。
必须跟在*或者+后边用
如:img src="test.jpg" width="60px" height="80px"/>
如果用正则匹配src中内容非懒惰模式匹配
src=".*"
匹配结果是:src="test.jpg" width="60px" height="80px"
意思是从="往后匹配,直到最后一个"匹配结束

懒惰模式正则:
src=".*?"
结果:src="test.jpg"
因为匹配到第一个"就结束了一次匹配。不会继续向后匹配。因为他懒惰嘛。

.表示除\n之外的任意字符
*表示匹配0-无穷
+表示匹配1-无穷

去掉括号实例

span style="font-size:14px;">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("\\[.+?\\]",""));
 }
}/span>

结果:

图片http://www.sds.com/jpg图片http://www.sds.com/jpg

总结

到此这篇关于正则表达式中的 .*? 或 .*+ 的意思 的文章就介绍到这了,更多相关正则表达式中的 .*? .*+ 内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
  • 解析正则表达式中的.*,.*?,.+?的含义

标签:大理 枣庄 广元 萍乡 江苏 蚌埠 衢州 衡水

巨人网络通讯声明:本文标题《正则表达式中的 .*? 或 .*+ 的意思》,本文关键词  ;如发现本文内容存在版权问题,烦请提供相关信息告之我们,我们将及时沟通与处理。本站内容系统采集于网络,涉及言论、版权与本站无关。
  • 相关文章
  • 收缩
    • 微信客服
    • 微信二维码
    • 电话咨询

    • 400-1100-266