欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

php split()字符串分割函数应用举例

程序员文章站 2022-03-26 14:31:46
...
  1. $date = "08-30-2010";
  2. //分隔符可以是斜线,点,或横线
  3. list($month, $day, $year) = split ('[/.-]', $date);
  4. //输出为另一种时间格式
  5. echo "今天是:$year 年 $month 月 $day 日";
  6. ?>
复制代码

注意,pattern 是一个正则表达式,如果想要用的分割字符是正则表达式中的特殊字符,要先将其转义。

你2,将 /etc/passwd 中的前四个字段分割出来:

复制代码

如果字符串中有 n 个与 pattern 匹配的项目,则返回的数组将包含 n+1 个单元。例如,如果没有找到 pattern,则会返回一个只有一个单元的数组。当然,如果 string 为空也是这样。

例3,解析可能用斜线,点,或横线分割的日期:

  1. // 分隔符可以是斜线,点,或横线
  2. $date = "04/30/1973";
  3. list($month, $day, $year) = split ('[/.-]', $date);
  4. echo "Month: $month; Day: $day; Year: $year
    \n";
  5. ?>
复制代码

注意: pattern 是一个正则表达式。如果想要用的分割字符是正则表达式中的特殊字符,要先将其转义。如果觉得PHP函数split()(或其它任何 regex 函数)行为古怪的话,请阅读包含在 PHP 发行包中 regex/ 子目录下的 regex.7 文件。该文件是手册页面格式,可以用类似 man /usr/local/src/regex/regex.7 的命令来阅读。

对一段文字按照字数进行分割,因为文字中可能是中英文混合的,而php函数strlen只能计算出字串的字节数,于是自己实现了几个函数,分享下。

例1,计算字符总长度。

0xa0)
{
$ccLen++;
$ind++;
}
else
{
$ccLen++;
}
}
return $ccLen;
}
?>

例2,从左侧截取字符串。

例3,把给定文字,按切割数量存入数组(适合短篇文字,长文章可没分隔一部分就直接处理一次)

0){
$str_tmp=ccStrLeft($str_tmp,$smslen);
array_push($arr_cont,$str_tmp);
$i+=strlen($str_tmp);
$str_tmp=substr($content,$i,strlen($content));
}
return $arr_cont;
} //by bbs.it-home.org
?>

测试:

’;
$smslen=3;//截取长度
print_r(SplitContent($str,$smslen));
?>

分割结果: Array ( [0] => a计算 [1] => 中英文 [2] => 混合1 [3] => 234 [4] => 字符串 [5] => 的长度 [6] => abc [7] => d )