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

 更新时间:2020-06-17 06:57:06   作者:佚名   我要评论(0)

正则表达式简介
正则表达式,又称规则表达式。(英语:Regular Expression,在代码中常简写为regex、regexp或RE),计算机科学的一个概念。正则表达式通常被用来检索

正则表达式简介

正则表达式,又称规则表达式。(英语: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

总结

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

您可能感兴趣的文章:

  • 解析正则表达式中的.*,.*?,.+?的含义

果博东方相关的文章

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

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

    正则表达式简介 正则表达式,又称规则表达式。(英语:Regular Expression,在代码中常简写为regex、regexp或RE),计算机科学的一个概念。正则表达式通常被用来检索
    2020-06-17
  • JS实现网站楼层导航效果代码实例

    JS实现网站楼层导航效果代码实例

    壹 &#10048; 引言 对于楼层导航而言,还有个重要的功能就是,随着滚动条滚动,达到某层时得同步点亮楼层导航的小图片。 由于我前面也说了不打算使用JQ,所以想着用J
    2020-06-17
  • 结束运行python的方法

    结束运行python的方法

    有时当一个条件成立的情况下,需要终止程序,可以使用sys.exit()退出程序。sys.exit()会引发一个异常 1.如果这个异常没有被捕获,那么python编译器将会退出,后面的
    2020-06-17
  • Java Stream流知识总结

    Java Stream流知识总结

    说明 在Java 8中,得益于Lambda所带来的函数式编程,引入了一个全新的Stream概念,用于解决已有集合类库既有的弊端 遍历 传统集合在于使用循环遍历 Java 8的Lamb
    2020-06-17
  • android通过servlet上传文件到服务器

    android通过servlet上传文件到服务器

    本文实例为大家分享了android通过servlet上传文件到服务器的具体代码,供大家参考,具体内容如下 服务器端:部署在Tomcat上,直接在myEclipse上开发即可 package
    2020-06-17
  • android通过servlet服务器保存文件到手机

    android通过servlet服务器保存文件到手机

    本文实例为大家分享了android通过servlet服务器保存文件到手机的具体代码,供大家参考,具体内容如下 服务器端:(手机和电脑连接的同一个WIFI) package com;
    2020-06-17
  • JAVA集合框架专题

    JAVA集合框架专题

    一、Java集合框架概述   集合可以看作是一种容器,用来存储对象信息。所有集合类都位于java.util包下,但支持多线程的集合类位于java.util.concurrent包下。   
    2020-06-17
  • 解决Keras 中加入lambda层无法正常载入模型问题

    解决Keras 中加入lambda层无法正常载入模型问题

    刚刚解决了这个问题,现在记录下来 问题描述 当使用lambda层加入自定义的函数后,训练没有bug,载入保存模型则显示Nonetype has no attribute 'get' 问题解决方法:
    2020-06-17
  • python实现PDF中表格转化为Excel的方法

    python实现PDF中表格转化为Excel的方法

    这几天想统计一下《中国人文社会科学期刊 AMI 综合评价报告(2018 年):A 刊评价报告》中的期刊,但是只找到了该报告的PDF版,对于表格的编辑不太方便,于是想到用
    2020-06-17
  • C语言实现天气信息管理系统

    C语言实现天气信息管理系统

    本文实例为大家分享了C语言实现天气信息管理系统的具体代码,供大家参考,具体内容如下 #include<stdio.h> #include<stdlib.h> #include<string.h> #include<wind
    2020-06-17

最新评论

中国男篮生田斗真结婚王治郅波音股价大涨13%浙江绍兴工厂大火创3学员回应质疑巴基斯坦