【正则表达式】正则表达式
来源:互联网 发布:矩阵互动 开盘造假 编辑:程序博客网 时间:2024/06/10 22:50
内容转载来自:正则表达式30分钟教程
内容转载来自:JAVA正则表达式详解
正则表达式的贪婪与懒惰模式
当正则表达式中包含能接受重复的限定符时,通常的行为是(在使整个表达式能得到匹配的前提下)匹配尽可能多的字符。以这个表达式为例:a.*b,它将会匹配最长的以a开始,以b结束的字符串。如果用它来搜索aabab的话,它会匹配整个字符串aabab。这被称为贪婪匹配。
有时,我们更需要懒惰匹配,也就是匹配尽可能少的字符。前面给出的限定符都可以被转化为懒惰匹配模式,只要在它后面加上一个问号?。这样.*?就意味着匹配任意数量的重复,但是在能使整个匹配成功的前提下使用最少的重复。现在看看懒惰版的例子吧:
a.*?b匹配最短的,以a开始,以b结束的字符串。如果把它应用于aabab的话,它会匹配aab(第一到第三个字符)和ab(第四到第五个字符)。
代码/语法 说明
*? 重复任意次,但尽可能少重复
+? 重复1次或更多次,但尽可能少重复
?? 重复0次或1次,但尽可能少重复
{n,m}? 重复n到m次,但尽可能少重复
{n,}? 重复n次以上,但尽可能少重复
0 0
- 【正则表达式】正则表达式
- 正则表达式
- 正则表达式
- 正则表达式
- 正则表达式
- 正则表达式
- 正则表达式
- 正则表达式
- 正则表达式
- 正则表达式
- 正则表达式
- 正则表达式
- 正则表达式
- 正则表达式
- 正则表达式
- 正则表达式
- 正则表达式
- 正则表达式
- 常量参数、变量参数和inout参数
- java基础学习笔记4
- 用Java实现九宫格
- uva1587
- Android-68-Tomcat各种启动错误的解决办法,如:Exception in thread "Thread-6" NoClassDefFoundError,Document base E:\
- 【正则表达式】正则表达式
- 继承UILabel类实现Label竖直对齐
- 纯UILabel实现文字的竖排显示
- redis和redis-Java客户端的设计思路
- centos 防火墙规则开放22 80 ,8080
- ubuntu15.04 vnc安装
- 【数据库】(一)Oracle数据库重启+开启监听
- 算法练习:两指针之三色排序
- Haskell之Yesod开发–边踩坑边开发(4.1)