zoukankan      html  css  js  c++  java
  • [ 转载 ] 什么是正则表达式的贪婪与非贪婪匹配

    http://www.cnblogs.com/xudong-bupt/p/3586889.html
    1.什么是正则表达式的贪婪与非贪婪匹配

    如:String str="abcaxc";

    Patter p="ab*c";

    贪婪匹配:正则表达式一般趋向于最大长度匹配,也就是所谓的贪婪匹配。如上面使用模式p匹配字符串str,结果就是匹配到:abcaxc(ab*c)。

    非贪婪匹配:就是匹配到结果就好,就少的匹配字符。如上面使用模式p匹配字符串str,结果就是匹配到:abc(ab*c)。

    2.编程中如何区分两种模式

    默认是贪婪模式;在量词后面直接加上一个问号?就是非贪婪模式。

    量词:{m,n}:m到n个

    *:任意多个

    +:一个到多个

    ?:0或一个
    以上来自博主的博客,然后这道题目
    .表示除 之外的任意字符
    *表示匹配0-无穷 
    +表示匹配1-无穷
    (?=Expression) 顺序环视,(?=\()就是匹配正括号
    懒惰模式正则: 
    src=".*? (?=\()) "
    结果:北京市
    因为匹配到第一个"就结束了一次匹配。不会继续向后匹配。因为他懒惰嘛。
    生活不容易 所以必须得牛逼
  • 相关阅读:
    datalist分页
    css渐变色
    4月25日
    今天
    DataView Distinct
    心情复杂啦
    高数矩阵
    计算机视觉学习OpenCV Java 调用
    大数据学习关于hdfs
    摄影学习构图技巧
  • 原文地址:https://www.cnblogs.com/ILoke-Yang/p/8060003.html
Copyright © 2011-2022 走看看