php 正则表达式一.函数解析
一.php中 常用的正则表达式函数
1.preg_match与preg_match_all
preg_match与preg_match_all区别:
preg_match的只要匹配成功就结束匹配,返回值是0或者1,如果有$matchs那么返回匹配成功的结果
preg_match_all:返回匹配的次数,如果有$matchs那么返回所有匹配成功的结果
$pattren = '/[0-9]/';
$subject = 'alfjsakldfnjf12f12ggd4j它'; $res1 = preg_match($pattren,$subject,$match);
echo '$res1='.$res1;
echo "<br />";
print_r($match);
echo "<hr />";
$res2 = preg_match_all($pattren,$subject,$match2);
echo '$res2='.$res2;
echo "<br />";
print_r($match2);
echo "<hr />";
输出:
$res1=1
Array ( [0] => 1 )
$res2=5
Array ( [0] => Array ( [0] => 1 [1] => 2 [2] => 1 [3] => 2 [4] => 4 ) )
2.preg_replace与preg_filter
区别:当$subject是数组时,preg_replace,返回所有的元素,而preg_filter只返回数组中匹配的值
$pattren = '/[0-9]/';
$replace = '女神';
//$subject = 'alfjsakldfnjf12f12ggd4j它';
$subject = array('al1fjs','akldf','njf12f','12ggd4j它'); $str1 = preg_replace($pattren,$replace,$subject);
$str2 = preg_filter($pattren,$replace,$subject); print_r($str1);
echo "<br />";
echo "<hr />";
print_r($str2);
//输出
Array ( [0] => al女神fjs [1] => akldf [2] => njf女神女神f [3] => 女神女神ggd女神j它 )
Array ( [0] => al女神fjs [2] => njf女神女神f [3] => 女神女神ggd女神j它 )
3.preg_grep.返回数组中与$pattern匹配的数组元素,并不替换
$pattern = '/[0-9]/';
$subject = array('fal','jsd24j','f1','2j40','9gaaf'); $arr = preg_grep($pattern, $subject); print_r($arr);
输出:Array ( [1] => jsd24j [2] => f1 [3] => 2j40 [4] => 9gaaf )
$pattern = '/[0-9]/';
$subject = '妹1子45啊,约234不2380约啊?'; $arr = preg_split($pattern,$subject);
print_r($arr);
输出:
Array ( [0] => 妹 [1] => 子 [2] => [3] => 啊,约 [4] => [5] => [6] => 不 [7] => [8] => [9] => [10] => 约啊? )
$str = 'reas{12}[23]_+fahiu~='; $res = preg_quote($str); print_r($res);
输出:reas\{12\}\[23\]_\+fahiu~\=
php 正则表达式一.函数解析的更多相关文章
- python正则表达式re之compile函数解析
re正则表达式模块还包括一些有用的操作正则表达式的函数.下面主要介绍compile函数. 定义: compile(pattern[,flags] ) 根据包含正则表达式的字符串创建模式对象. 通过py ...
- PHP 正则表达式常用函数使用小结
在PHP中有两套正则表达式函数库.一套是由PCRE(Perl Compatible Regular Expression)库提供的.PCRE库使用和Perl相同的语法规则实现了正则表达式的模式匹配,其 ...
- PHP中有关正则表达式的函数集锦
之前学正则表达式的目的是想从网上抓取点小说啊,文档啊,还有获取相应的视频连接然后批量下载.当时初学PHP根本不知道PHP有专门抓包的工具,就像Simple_html_dom.php(在我的其他博文中有 ...
- ORACLE中的支持正则表达式的函数
ORACLE中的支持正则表达式的函数主要有下面四个:1,REGEXP_LIKE :与LIKE的功能相似2,REGEXP_INSTR :与INSTR的功能相似3,REGEXP_SUBSTR :与SUBS ...
- [转]javascript eval函数解析json数据时为什加上圆括号eval("("+data+")")
javascript eval函数解析json数据时为什么 加上圆括号?为什么要 eval这里要添加 “("("+data+")");//”呢? 原因在于: ...
- PHP json_decode 函数解析 json 结果为 NULL 的解决方法
在做网站 CMS 模块时,对于模块内容 content 字段,保存的是 json 格式的字符串,所以在后台进行模块内容的编辑操作 ( 取出保存的数据 ) 时,需要用到 json_decode() 函数 ...
- Matlab中bsxfun和unique函数解析
一.问题来源 来自于一份LSH代码,记录下来. 二.函数解析 2.1 bsxfun bsxfun是一个matlab自版本R2007a来就提供的一个函数,作用是”applies an element-b ...
- socket使用TCP协议时,send、recv函数解析以及TCP连接关闭的问题
Tcp协议本身是可靠的,并不等于应用程序用tcp发送数据就一定是可靠的.不管是否阻塞,send发送的大小,并不代表对端recv到多少的数据. 在阻塞模式下, send函数的过程是将应用程序请求发送的数 ...
- sigaction函数解析
http://blog.chinaunix.net/uid-1877180-id-3011232.html sigaction函数解析 sigaction函数的功能是检查或修改与指定信号相关联的处理 ...
随机推荐
- DataURL与File,Blob,canvas对象之间的互相转换的Javascript (未完)
canvas转换为dataURL (从canvas获取dataURL) var dataurl = canvas.toDataURL('image/png'); var dataurl2 = canv ...
- php容易忽视的地方
一:bool in_array ( mixed $needle , array $haystack [, bool $strict ] ) 用的时候加最后一个参数,判断类型 <?php $a = ...
- Android开发基本入门,对于事件、适配器的理解不够深入
能到处抄点代码搞出东西来了,但对事件.对ListView这类的控件,数据解析后的视图绑定,还没有完全搞清原理. 真是年纪越大,学习能力越差了.
- 1年3年5年-我对PHP攻城师有看法
今天早上公车上看微信拉勾的一些岗位推送,挑了几个PHP攻城师看看 15K-20K的 百万级网站架构经验 3年以上开发,至少1年互联网用户产品开团队开发经验 不低于百度T4水平 数据库规划和优化,熟悉常 ...
- C++读取Sql Server
代码如下: // ReadSqlConsole.cpp: 主项目文件. #include "stdafx.h" #include <iostream> #include ...
- Unable to parse request org.apache.commons.fileupload.FileUploadBase$IOFileUploadException: Processing of multipart/form-data request failed. null
最近做一个web项目中有上传文件的功能,已经写出并在本地和部署到服务器上测试了好几个文件上传都没问题(我用的是tomcat).部署上服务器,上传图片时有的图片大就回在tomcat日志报如下错误: Un ...
- Oracle(2)数据库
1.使用"||"连接多个字段,合并成一列 watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveWFudGluZ21laQ==/font/5a ...
- 最短路中部分点仅仅能从中随意选取K个问题
题意:给N个点,还有另外m个点(当中仅仅能选K个).求最短路. 思路:在SPFA的基础上,用一个数组来统计,在某点入队时(要拓展其它点了),若该点是m个点中的,则count[i]=原来的+1:若不是. ...
- 自定义select模拟--基于jQuery
说明 模拟select,实现原生select不能实现的样式 将html结构入在Html页面中,css,js做分离 开发人员引用只要引入相关文件,并$().selectbox()就可转换样式,有更新 ...
- javaEE面试重点
Hibernate工作原理及为什么要用? 原理: 1. 读取并解析配置文件 2. 读取并解析映射信息.创建SessionFactory 3. 打开Sesssion 4. 创建事务Transation ...