字符串分割函数的使用方法,php中几个字符串替

作者: 计算机网络  发布:2019-09-26

array preg_split ( string pattern, string subject [, int limit [, int flags]])

一、str_replace(find,replace,string,count)

归来四个数组,蕴涵 subject 中沿着与 pattern 正则表明式来合作的界限所分割的子串。

作用:str_replace() 函数使用贰个字符串替换字符串中的另一对字符。

借使内定了 limit,则最多再次来到 limit 个子串,假如 limit 是 -1,则意味着未有界定,能够用来继续点名可选参数 flags。

参数 描述
find 必需。规定要探求的值。
replace 必得。规定替换 find 中的值的值。
string 必须。规定被找寻的字符串。
count 可选。三个变量,对替换数实行计数。

flags 能够是下列标识的随机组合(用按位或运算符 | 组合):

PREG_SPLIT_NO_EMPTY
设若设定了本标志,则 preg_split() 只回去非空的成份

在本例中,我们将演示带有数组和 count 变量的 str_replace() 函数:

看个实例

 代码如下

<?php教程
$word_count = $word_length = 0;

if ($fh = fopen('novel.txt','r')) {
  while (! feof($fh)) {
    if ($s = fgets($fh)) {
      $words = preg_split('/s+/',$s,-1,PREG_SPLIT_NO_EMPTY);
      foreach ($words as $word) {
        $word_count++;
        $word_length += strlen($word);
      }
    }
  }
}

print sprintf("The average word length over %d words is %.02f characters.",
              $word_count,
              $word_length/$word_count);
?>

<?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

<?
$user_info = "+J+++G+++++w";
$fields = preg_split("/+{1,}/", $user_info);
while ($x < sizeof($fields)) :
   print $fields[$x]. "<br>";
   $x++;
endwhile;
?>

补偿:count借使被钦定,它的值将棉被服装置为轮换产生的次数。

鉴于分割后变为了数组,所以大家要运用foreach 来遍历输出了。

二、substr_replace(string,replacement,start,length)

<?php
   $delimitedText = "+A+++G+++++++++++C";
   $fields = preg_split("/+{1,}/", $delimitedText);
    foreach($fields as $field) echo $field."<br />";
?>

<?
$text = "a, o, p";
$fruitarray = preg_split( "/, | and /", $text );
print "<pre>n";
print_r( $fruitarray );
print "</pre>n";
?>  

作用: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为Infiniti
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
print_r(str_split("Hello",3));
?>

输出:

Array
(
[0] => Hel
[1] => lo
)

本文由金沙澳门官网送注册58发布于计算机网络,转载请注明出处:字符串分割函数的使用方法,php中几个字符串替

关键词: