探讨PHP函数split()如何使用正则表达式切割字符串

开发 后端
PHP函数split()的基本语法为:array split ( string $pattern, string $string [, int $limit] )。我们向大家举了两个例子来具体讲解这个函数的使用方法。

对于初学者来说,掌握PHP中常用函数的用法,是其继续学习的基础。今天我们就为大家详细介绍有关PHP函数split()的一些使用方法,希望大家能通过这篇文章介绍的内容增加自己的知识库。

#t#说明
array split ( string $pattern, string $string [, int $limit] )

提示
preg_split() 函数使用了 Perl 兼容正则表达式语法,通常是比PHP函数split()更快的替代方案。如果不需要正则表达式的威力,则使用 explode() 更快,这样就不会招致正则表达式引擎的浪费。

本函数返回一个字符串数组,每个单元为 string 经区分大小写的正则表达式 pattern 作为边界分割出的子串。如果设定了 limit,则返回的数组最多包含 limit 个单元,而其中***一个单元包含了 string 中剩余的所有部分。如果出错,则 split() 返回 FALSE。

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

例 1839. PHP函数split()例子

  1. <?php 
  2. list($user, $pass, $uid, $gid, $extra) =  
  3. split (":", $passwd_line, 5);  
  4. ?> 

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

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

例 1840. PHP函数split()例子

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

 

想仿效 Perl 中类似的 @chars = split('', $str) 行为,请参考 preg_split() 或 str_split() 函数中的例子。

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

责任编辑:曹凯 来源: 电脑学习网
相关推荐

2009-11-30 17:06:35

PHP ereg()函

2009-09-16 17:02:15

正则表达式匹配字符串

2011-05-11 17:40:30

PHP正则表达式

2009-09-16 11:17:12

PHP正则表达式定位字

2009-08-14 17:44:46

C#中使用正则表达式匹

2010-03-15 16:13:11

Python正则表达式

2009-09-16 10:59:24

PHP正则表达式元字符

2009-08-20 14:31:55

C#正则表达式字符串

2009-04-22 15:06:16

正则表达式PHP特殊字符

2009-09-16 13:44:03

PHP正则表达式字符集

2009-09-16 09:58:53

PHP正则表达式函数

2009-09-16 10:43:22

PHP正则表达式函数

2009-09-16 17:54:31

正则表达式实现

2010-03-15 16:21:28

Python正则表达式

2010-01-05 17:46:04

.NET Framew

2012-04-28 15:22:46

PHP

2009-09-16 18:16:34

正则表达式

2024-04-16 00:11:05

Python换行符测试

2009-08-25 09:54:36

PHP正则表达式

2010-03-25 18:25:36

Python正则表达式
点赞
收藏

51CTO技术栈公众号