Php/func regex preg split

来自菜鸟教程
跳转至:导航、​搜索

PHP preg_split()函数

Reg PHP RegExp参考

使用preg_split()将日期分割成多个部分:

<?php

  $date = "1970-01-01 00:00:00";
$pattern = "/[-\s:]/";
$components = 
  preg_split($pattern, $date);
print_r($components);
?>

定义和用法

The preg_split() 函数使用正则表达式的匹配项作为分隔符将字符串分解为数组。

句法

preg_split(pattern, string, limit, flags)

参数值

参数 描述
pattern 需要。确定使用什么作为分隔符的正则表达式
string 需要。被分割的字符串
limit 可选的。默认值为-1,表示无限制。限制返回数组可以具有的元素数量。如果在找到所有分隔符之前已达到限制,则字符串的其余部分将放入数组的最后一个元素中
flags

可选的。这些标志提供了用于更改返回的数组的选项:

  • PREG_SPLIT_NO_EMPTY-空字符串将从返回的数组中删除。
  • PREG_SPLIT_DELIM_CAPTURE-如果正则表达式包含用括号括起来的组,则此组的匹配项将包含在返回的数组中。
  • PREG_SPLIT_OFFSET_CAPTURE-转换后的数组中的每个元素将是一个包含两个元素的数组,其中第一个元素是子字符串,第二个元素是输入字符串中子字符串第一个字符的位置。

技术细节

返回值: 返回一个子字符串数组,其中每个项目对应于由正则表达式匹配所分隔的输入字符串的一部分
PHP版本: 4+

更多例子

使用PREG_SPLIT_DELIM_CAPTURE标志:

<?php

  $date = "1970-01-01 00:00:00";
$pattern = "/([-\s:])/";
$components = 
  preg_split($pattern, $date, -1,
PREG_SPLIT_DELIM_CAPTURE);

  print_r($components);
?>

使用PREG_SPLIT_OFFSET_CAPTURE标志:

<?php

  $date = "1970-01-01";
$pattern = "/-/";
$components = 
  preg_split($pattern, $date, -1,
PREG_SPLIT_OFFSET_CAPTURE);

  print_r($components);
?>

Reg PHP RegExp参考