【六】PHP正则表达式方法
PHP中正则表达式的声明格式有两种方式,一种是POSIX老版模式,已经不常用。还有一种是其他语言中常见的PCRE方法。
1.正则表达式的匹配方法并返回匹配的项:array preg_grep(string reg,array 被匹配的数组);
$reg="/a|b/";
$str=array('abcaBC','bcd','kkk');
$ar=preg_grep($reg,$str);
print_r($ar);//Array ( [0] => abcaBC [1] => bcd )
2.判断目标字符串是否匹配正则表达式:int preg_match(string 正则表达式,string 目标字符串,array 存放数组(可有可无)); int preg_match_all(string 正则表达式,string 目标字符串,array 存放数组);
$arr=$arr2=array();
$reg="/a|b/";
$str='cccacccccaa';
echo preg_match_all($reg,$str,$arr);//
echo preg_match($reg,$str,$arr2);//
print_r($arr);//Array ( [0] => Array ( [0] => a [1] => a [2] => a ) )
print_r($arr2);//Array ( [0] => a )
3.将字符串中的特殊字符转义 string preg_quote(string 目标字符串,string 指定转义的字符串(可有可无));
$str="\$$^&#@";
$str2='\$$^&#@';
echo preg_quote($str);// \$\$\^&#@
echo preg_quote($str2);// \\\$\$\^&#@
echo preg_quote($str,'@');// \$\^&#\@
4.正则表达式的替换函数:preg_replace(string 正则,string 替换字符,string 目标字符串,int 替换次数(可有可无,默认全部替换));
$reg="/a|b/";
$str='abcskdfaasdca';
echo preg_replace($reg,'@',$str);//@@cskdf@@sdc@
echo preg_replace($reg,'@',$str,2);//@@cskdfaasdca
5.正则表达式的替换函数:preg_replace_callback(string 正则 ,string callback函数名,string 目标字符串,int 可有可无的替换次数);
function call($ss){
$ss='obj';
return $ss;
}
$reg="/a|b/";
$str='abcdefga';
echo preg_replace_callback($reg,'call',$str);//objobjcdefgobj
echo preg_replace($reg,'call',$str,2);//objobjcdefga
6.用正则表达式分割字符串,返回一个数组:array preg_split(string 正则,string 目标字符串,int 分割次数(可有可无)); 注:作为分割的匹配项被删除。
$reg="/a/";
$str='abcadeafga';
print_r(preg_split($reg,$str));//Array ( [0] => [1] => bc [2] => de [3] => fg [4] => )
print_r(preg_split($reg,$str,2));//Array ( [0] => [1] => bcadeafga )
【六】PHP正则表达式方法的更多相关文章
- 千万别把js的正则表达式方法和字符串方法搞混淆了
我们在字符串操作过程中肯定经常用了test() split() replace() match() indexof()等方法,很多人经常把用法写错了,包括我,所以今天细细的整理了下. test()是判 ...
- javascript入门篇(六、正则表达式)
JavaScript 正则表达式 正则表达式是由一个字符序列形成的搜索模式.当你在文本中搜索数据时,你可以用搜索模式来描述你要查询的内容. 正则表达式可以是一个简单的字符,或一个更复杂的模式.正则表达 ...
- JS正则表达式方法
使用正则表达式的主要有match,exec,test 1.正则表达式方法test测试给定的字符串是否满足正则表达式,返回值是bool类型的,只有真和假. var user_code = $(" ...
- devi into python 笔记(六)正则表达式 原始字符串
字符串函数replace: #string.replace: #字符串的replace方法:替换子串,不改变原来的字符串 s = "broad road" #打印出来会发现不单单是 ...
- C#编程(四十六)----------正则表达式
正则表达式 1.定义一个Regex类的实例 Regex regex=new Regex(“”); 这里初始化参数就是一个正则表达式,”\d”表示配置数字 2.判断是否匹配 判断一个字符串,是否匹配一个 ...
- PHP:第六章——正则表达式的基本概念
<?php header("Content-Type:text/html;charset=utf-8"); //正则表达式的基本概念: //宽松匹配和严格匹配: //常见的匹 ...
- PHP十六个魔术方法
PHP中把以两个下划线__开头的方法称为魔术方法(Magic methods),这些方法在PHP中充当了举足轻重的作用. 魔术方法包括: __construct(),类的构造函数 __destruct ...
- 章节十六、3-TestNG方法和类注解
一.Test Suite(测试套件) 我们通常认为一个testcase就是一个测试方法,但是会有很多的testcase,所以我们不可能把所有的testcase放到同一个测试类中,假如需要测试的页面有1 ...
- Java学习笔记【六、正则表达式】
参考:http://www.runoob.com/java/java-regular-expressions.html 概述 java.util.regex包,主要包含三个类: Pattern:正则表 ...
随机推荐
- [css filter]filter在界面实现滤镜效果
最近逛当当,发现当当尾品会的首页推荐最底端的商品链接是灰色的图片,然后鼠标hover之后就会变成正常的彩色 肯定不是通过img来改变的,然后直接看了一下源码,其实是用的filter属性 _(:з」∠) ...
- [原创]从Oracle和Microsoft Sql Server迁移到PostgreSQL Plus Advanced Server
一.了解PPAS的迁移方式1.在线迁移和离线迁移使用Migration Studio或Migration Toolkit直接向PPAS数据库进行对象定义和数据表中数据的迁移称为在线迁移,生成要迁移对象 ...
- 6.24 AppCan移动开发者大会,我爱我家即将闪亮登场!
6.24 AppCan移动开发者大会进入倒计时,报名通道即将关闭! “6月24日, 2016AppCan移动开发者大会即将召开,以“平台之上,应用无限”为主题,1500位行业精英汇聚在此,重磅新品发布 ...
- MVC4.0 实现单一Action返回多种结果
在开发过程中,我们往往会遇到这种情况.例如:展示学生的详细信息页面,加载学生的详细信息局部视图,异步请求学生的详细信息Json数据等等. 一般情况下,我们会写三个不同的action来支撑前台数据的调用 ...
- Asp.NET网站Session浅谈
.NET网站在Web.config的<configuration>下<system.web>下<sessionState>配置session. sessionSta ...
- Mono for Android (4)-- 图片转为二进制,二进制转回图片
最近纠结蓝牙打印的问题,想着图片先转为二进制发给打印机,找了好多资料,终于成功了,贴出来共享一下 先是图片转换为二进制的: Bitmap bitmap = BitmapFactory.DecodeRe ...
- QT对话框设计
软件和系统:QTcreator5.7,win8.1 1. 首先新建项目,选择application中的Qt widgets application. 2. 创建类Dialog,选择QDialog作为基 ...
- nodeJs事件之监听移除事件
var EventEmitter=require('events').EventEmitter var life=new EventEmitter(); //comfort 求安慰,函数名: //fo ...
- Asp.Net 操作word 第二篇[推荐]
引言:前段时间有项目要用c#生成Word格式的计算报告,通过网络查找到很多内容,但是都很凌乱,于是自己决定将具体的步骤总结整理出来,以便于更好的交流和以后相似问题可以迅速的解决! 现通过具体的示例演示 ...
- 【Merge Two Sorted Lists】cpp
题目: Merge two sorted linked lists and return it as a new list. The new list should be made by splici ...