自学php-POSIX扩展正则表达式函数
2015-11-10 17:12
621 查看
PHP中实现POSIX正则表达式的函数有7个:
主要的函数语法:
ereg()函数和eregi()函数:语法格式为:bool ereg/eregi(string pattern,string string[,array regs]);函数的功能:在字符串string中匹配表达式pattern,成功返回true,否则返回false;如果有regs参数,则将成功匹配的字串按子串(子表达式)划分,并存储到regs数组中;ereg区分大小写而eregi不区分;如:
<?php
$ereg='^[$][[:alpha:]_][[:alnum:]]*'; //要匹配的字串表达式
ereg($ereg,'$_name',$register); //使用ereg()函数匹配
var_dump($register); //显示匹配后的数组结构
?>
运行结果为:
ereg_replace()函数和eregi_replace()函数;语法格式为:string ereg_replace/eregi_replace(string pattern,string replacement,string string);函数功能:在字符串string中匹配表达式pattern,如果匹配成功,则使用replacement来替换字串,并返回替换后的string,eregi_replace()不区分大小写;如:
<?php
$ereg = 'tm'; //要匹配的字串表达式
$str = 'hello,tm,Tm,tM'; //要查找的文本
$rep_str=eregi_replace($ereg,'TM',$str); //替换查找的文本
echo $rep_str; //输出替换后的文本
?>
运行结果为:hello,TM,TM,TM
split()函数和spliti()函数;语法格式为:array split/spliti(string pattern,string string[,int limit]);函数功能:使用表达式pattern来分割字符串string,参数limit可选,如果有那么数组最多有limit个元素,剩余部分都写到最后一个数组元素中,如果函数错误返回false;split()函数区分大小写,spliti()函数不区分大小写;例如:
<?php
$ereg = 'is'; //分割字符串的表达式
$str = 'This is a register book'; //要被分割的字符串
$arr_str = spliti($ereg,$str); //使用spliti()函数分割
var_dump($arr_str); //显示分割后的数组结构
?>
运行结果为:
主要的函数语法:
ereg()函数和eregi()函数:语法格式为:bool ereg/eregi(string pattern,string string[,array regs]);函数的功能:在字符串string中匹配表达式pattern,成功返回true,否则返回false;如果有regs参数,则将成功匹配的字串按子串(子表达式)划分,并存储到regs数组中;ereg区分大小写而eregi不区分;如:
<?php
$ereg='^[$][[:alpha:]_][[:alnum:]]*'; //要匹配的字串表达式
ereg($ereg,'$_name',$register); //使用ereg()函数匹配
var_dump($register); //显示匹配后的数组结构
?>
运行结果为:
array (size=1) 0 => '$_name' (length=6)
ereg_replace()函数和eregi_replace()函数;语法格式为:string ereg_replace/eregi_replace(string pattern,string replacement,string string);函数功能:在字符串string中匹配表达式pattern,如果匹配成功,则使用replacement来替换字串,并返回替换后的string,eregi_replace()不区分大小写;如:
<?php
$ereg = 'tm'; //要匹配的字串表达式
$str = 'hello,tm,Tm,tM'; //要查找的文本
$rep_str=eregi_replace($ereg,'TM',$str); //替换查找的文本
echo $rep_str; //输出替换后的文本
?>
运行结果为:hello,TM,TM,TM
split()函数和spliti()函数;语法格式为:array split/spliti(string pattern,string string[,int limit]);函数功能:使用表达式pattern来分割字符串string,参数limit可选,如果有那么数组最多有limit个元素,剩余部分都写到最后一个数组元素中,如果函数错误返回false;split()函数区分大小写,spliti()函数不区分大小写;例如:
<?php
$ereg = 'is'; //分割字符串的表达式
$str = 'This is a register book'; //要被分割的字符串
$arr_str = spliti($ereg,$str); //使用spliti()函数分割
var_dump($arr_str); //显示分割后的数组结构
?>
运行结果为:
array (size=4) 0 => 'Th' (length=2) 1 => ' ' (length=1) 2 => ' a reg' (length=6) 3 => 'ter book' (length=8)
相关文章推荐
- php5.6完全yum安装LAMP环境并加载fastcgi模块
- PHP操作Excel (创建Excel并写入数据)
- php学习心得---面向对象篇
- PHP中空字符串介绍0、null、empty和false之间的关系
- wget下载FTP的文件
- phpexecl导入时空行里面有空格导致导入空数据问题
- php的ci框架 配合phpmailer 发邮件
- 反转字符串
- Yii2-rbac
- PHP header用法
- PHP MySQLi_STMT 查找
- php 生成订单号
- PHP session阻塞页面的问题
- php Date函数
- php获取当前工作目录的方法getcwd
- yii2 控制器类命名规则
- weiphp布署在sina sae图片显示不了问题
- php多进程
- laravel 获得url 参数
- PHP MySQLi_STMT添加数据