php正则预查
php正则预查
// 把ing结尾的单词词根部分(即不含ing部分)找出来
$str = 'hello ,when i am working , don not coming';
零宽度:站在原地往前看,不消耗字符,叫零宽度
前瞻:往前看
断言:判断可能会是什么
正预测:判断是否是准确的ing或者规定的字符
//$patt = '/\b(\w+)ing\b/';//前边的不管,后面的ing拿出来
//$patt = '/\b\w+(?=ing)\b/';//语义矛盾,没有谁后面是ing,同时又是\b
$patt = '\b\w+(?=ing\b)/';
preg_match_all($patt, $str, $matches);
print_r($matches);
//把不是ing结尾的单词找出来
//零宽度 前瞻 断言 负预测
$patt = '/\b\w+(?!ing)\w{3}\b/';//判断不是ing,最起码要有3个以上字符才可以判断
preg_match_all($patt, $str, $matches);
print_r($matches);
//把un开头的单词词根找出来
//零宽度 回顾(返回去看) 正预测 断言
$str = 'luck ,unlucky, state , unhappy';
$patt = '/(?<=\bun)\w+\b/';
preg_match_all($patt, $str, $matches);
print_r($matches);
// 把非un开头的单词找出来
// 零宽度 负预测 回顾 断言
$patt = '/\b\w{2}(?<!un)\w*\b/';
preg_match_all($patt, $str, $matches);
print_r($matches);
php正则预查的更多相关文章
- PHP正则 正向预查&反向预查
了解正向预查&反向预查前,我们先要知道正则的2个函数:preg_match_all . preg_replace preg_match_all 可以看文章:点击查看 preg_replace ...
- javascript正则表达式---正向预查
什么是正向预查?这里有腾讯招聘的一个例子: 如何给一串数字用千分制表示?比如9999999999变成9,999,999,999.这样一个问题你会怎么答呢?博主js正则学的不咋样,然后用操作字符串的办法 ...
- js正则表达式中的正向肯定预查和正向否定预查
对于没有使用过这几个表达式的人,应该对这个概念都有点不太理解,下面就以实际例子说明这几个表达式的用户. 一.?:pattern——匹配检验:会作为匹配校验,是一个非获取匹配,并出现在匹配字符结果里面, ...
- 正则表达式中的?=,?!,?<=,?<!(预查)解释小栗子
之前在学正则表达式的时候学的并不是很透彻 感觉看看元字符(元字符要用 \ 转义),限定符(^开头 $结尾), 前面写个范围[a-z],在后面写个{n,}能匹配就行了 当时的自己 然而昨天我参加了个 ...
- python re:正向肯定预查(?=)和反向肯定预查(?<=)
参考资料:https://tool.oschina.net/uploads/apidocs/jquery/regexp.html (?=pattern) 正向肯定预查,在任何匹配pattern的字符串 ...
- PHP函数preg_replace() 正则替换所有符合条件的字符串
PHP preg_replace() 正则替换,与JavaScript 正则替换不同,PHP preg_replace() 默认就是替换所有符号匹配条件的元素. preg_replace (正则表达式 ...
- shell 常用正则
shell常用正则表达式 “^\d+$” //非负整数(正整数 + 0) “^[0-9]*[1-9][0-9]*$” //正整数 “^((-\d+)|(0+))$” //非正整数(负整数 ...
- PHP 常用正则汇总
平时做网站经常要用正则表达式,下面是一些讲解和例子,仅供大家参考和修改使用: }|d{})-((([-]{}))|([|]))-(([-]([-]{}))|([|]))$/ ([-]{}) ...
- PHP preg_replace() 正则替换所有符合条件的字符串示例
PHP preg_replace() 正则替换,与Javascript 正则替换不同,PHP preg_replace() 默认就是替换所有符号匹配条件的元素. 需要用程序处理的数据并不总是预先以数 ...
随机推荐
- hdu–2369 Bone Collector II(01背包变形题)
题意:求解01背包价值的第K优解. 分析: 基本思想是将每个状态都表示成有序队列,将状态转移方程中的max/min转化成有序队列的合并. 首先看01背包求最优解的状态转移方程:\[dp\left[ j ...
- 【Alpha阶段】第一次Scrum例会
个人任务报告 姓名 昨日已完成任务 明日计划任务 工作困难 岳桐宇 #20 撰写网站用户界面与体验改进方案文档 无 1. 与邓楚云的制定前端工作流程产生冲突,发生了不愉快的情况,最后在整个团队协商的情 ...
- C++ STL中vector的内存机制和性能分析
vecotr是动态数组,顾名思义他可以动态的增加自己的长度. 内存机制: 但是怎样的增加自己的长度? vector有两个函数一个是capacity()返回内存空间即缓冲区的大小,另一个是size()返 ...
- codeforce B Island Puzzle
B. Island Puzzle time limit per test 2 seconds memory limit per test 256 megabytes input standard in ...
- JS-DOM对象知识点汇总(慕课)
<!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title>D ...
- BigDecimal 类型数据的一些应用
1.比较大小 可以通过BigDecimal的compareTo方法来进行比较.返回的结果是int类型,-1表示小于,0是等于,1是大于. 例如: if(a.compareTo(b) == -1){ a ...
- tomcat添加https
1.下载依赖包 wget http://archive.apache.org/dist/apr/apr-1.4.5.tar.gz wget http://archive.apache. ...
- easyui numberbox一些常用属性,方法
1.value="1234567.89"//数字框中的值 2.precision:2//精度(小数点后两位) 3.groupSeparator:','//(组分隔符) 4.deci ...
- VclZip压缩文件夹
压缩指定路径MyZipDir下的文件夹b及b目录下的所有文件和文件b.txt function ZipDir(zipMode:Integer;zipControl:TVCLZip;MyZipName, ...
- Spring MVC学习笔记——注解式控制器