在php中字符替换函数有几个如有:str_replace、substr_replace、preg_replace、preg_split、str_split等函数,下面我来给大家总结介绍介绍.
一、str_replace(find,replace,string,count)
作用:str_replace() 函数使用一个字符串替换字符串中的另一些字符。
参数 描述
find 必需,规定要查找的值.
replace 必需,规定替换 find 中的值的值.
string 必需,规定被搜索的字符串.
count 可选,一个变量,对替换数进行计数.
在本例中,我们将演示带有数组和 count 变量的 str_replace() 函数,代码如下:
- <?php
 - $arr = array("blue","red","green","yellow");
 - print_r(str_replace("red","pink",$arr,$i));
 - echo "Replacements: $i";
 - ?>
 - //输出:
 - Array
 - (
 - [0] => blue
 - [1] => pink
 - [2] => green
 - [3] => yellow
 - )
 
Replacements:1
补充:count如果被指定,它的值将被设置为替换发生的次数.
二、substr_replace(string,replacement,start,length)
作用:substr_replace() 函数把字符串的一部分替换为另一个字符串.
参数 描述
string 必需,规定要检查的字符串.
replacement 必需,规定要插入的字符串.
start 必需,规定在字符串的何处开始替换.
正数 - 在第 start 个偏移量开始替换
负数 - 在从字符串结尾的第 start 个偏移量开始替换
0 - 在字符串中的第一个字符处开始替换
charlist 可选,规定要替换多少个字符.
正数 - 被替换的字符串长度
负数 - 从字符串末端开始的被替换字符数
0 - 插入而非替换
例子,代码如下:
- <?php
 - echo substr_replace("Hello world","earth",6);
 - ?>
 - //输出:Hello earth
 
三、preg_replace(pattern,replacement,subject,limit = -1,$count)
作用:执行一个正则表达式的搜索和替换
参数 描述
pattern 必需,需要搜索的模式.
replacement 必需,用于替换的字符串或数组.
subject 必需,需要替换的字符串或数组.
limit 替换的次数,-1为无限
count 完成替换的次数,变量
Example #1 使用后向引用紧跟数值原文,代码如下:
- <?php
 - $string = 'April 15, 2003';
 - $pattern = '/(w+) (d+), (d+)/i';
 - $replacement = '${1}1,$3';
 - echo preg_replace($pattern, $replacement, $string);
 - ?>
 - //以上例程会输出:
 - April1,2003
 
Example #2 preg_replace()中使用基于索引的数组,代码如下:
- <?php
 - $string = 'The quick brown fox jumped over the lazy dog.';
 - $patterns = array();
 - $patterns[0] = '/quick/';
 - $patterns[1] = '/brown/';
 - $patterns[2] = '/fox/';
 - $replacements = array();
 - $replacements[2] = 'bear';
 - $replacements[1] = 'black';
 - $replacements[0] = 'slow';
 - echo preg_replace($patterns, $replacements, $string);
 - ?>
 - //以上例程会输出:
 - The bear black slow jumped over the lazy dog.
 
四、preg_split ( pattern , subject,limit = -1 ,flag )
作用:通过正则表达式分割字符串
参数 描述
pattern 必需,需要搜索的模式.
replacement 必需,用于替换的字符串或数组.
subject 必需,需要替换的字符串.
limit 被分割的字符串最多limit.
flag 模式
例 1672. preg_split() 例子,取得搜索字符串的成分,代码如下:
- <?php
 - // split the phrase by any number of commas or space characters,
 - // which include " ", r, t, n and f
 - $keywords = preg_split ("/[s,]+/", "hypertext language, programming");
 - ?>
 
例 1673,将字符串分割成字符,代码如下:
- <?php
 - $str = 'string';
 - $chars = preg_split('//', $str, -1, PREG_SPLIT_NO_EMPTY);
 - print_r($chars);
 - ?>
 
例 1674,将字符串分割为匹配项及其偏移量,代码如下:
- <?php
 - $str = 'hypertext language programming';
 - $chars = preg_split('/ /', $str, -1, PREG_SPLIT_OFFSET_CAPTURE);
 - print_r($chars);
 - ?>
 - //本例将输出:
 - Array
 - (
 - [0] => Array
 - (
 - [0] => hypertext
 - [1] => 0
 - )
 - [1] => Array
 - (
 - [0] => language
 - [1] => 10
 - )
 - [2] => Array
 - (
 - [0] => programming
 - [1] => 19
 - )
 - )
 
五、str_split(subject,length)
作用:将字符串分割成数组
参数 描述
subject 字符串.
length 每一段的长度.
例子1,代码如下:
- <?php
 - print_r(str_split("Hello"));
 - ?>
 - //输出:
 - Array
 - (
 - [0] => H
 - [1] => e
 - [2] => l
 - [3] => l
 - [4] => o
 - )
 
例子2,代码如下:
转载请注明来源:php中几个字符串替换函数详解
- <?php
 - print_r(str_split("Hello",3));
 - //开源代码phpfensi.com
 - ?>
 - 输出:
 - Array
 - (
 - [0] => Hel
 - [1] => lo
 - )
 
哈尔滨品用软件有限公司致力于为哈尔滨的中小企业制作大气、美观的优秀网站,并且能够搭建符合百度排名规范的网站基底,使您的网站无需额外费用,即可稳步提升排名至首页。欢迎体验最佳的哈尔滨网站建设。
