从一行获取分隔符

时间:2013-06-20 16:24:56

标签: php csv substring delimiter

有人可以告诉我在PHP中找到给定行的非空白分隔符的最佳方法吗?

一些例子是:

Ex 1:      jon, doe, abc@gmail.com, 996655

Ex 2:      abc@gmail.com; doe; ;996655

Ex 3:      jon# doe# 996655# abc@gmail.com

前4:      jon doe 96655

Ex 5:      jon doe 996655 abc@gmail.com

Ex 6:      jon;doe;abc@gmail.com;996655;

在上面的前4和5中,它应该返回,因为没有找到分隔符。

感谢任何帮助。

由于

1 个答案:

答案 0 :(得分:0)

  

如果电子邮件位于最后一列,则应该在电子邮件之前获取上一个字符(白色空格除外)。一旦找到char,它应检查该char是否不是这些中的任何一个a-zA-Z0-9。\ r \ n \ f

<?
//Store list
$list = "jon, doe, abc@gmail.com, 996655";
//Split list
$keywords = preg_split("/[:;,#]/", $list);
//Find the position of the last character of the matching word from the list
$index = strpos($list, $keywords[0]) + strlen($keywords[0]);
//Print it
echo substr($list, $index, 1);
?>