处理PHP中的制表符分隔文件中的双制表符

时间:2010-08-05 19:42:11

标签: php regex csv tabs

$lineArray = preg_split('/\t\s*(?=([^"]*"[^"]*")*[^"]*$)/', $line);

上面的代码片段用于拆分制表符分隔文件,其中制表符不在双引号内。除了有双标签(缺少字段)的情况外,它工作正常。基本上,当有两个选项卡时,PHP只能看到一个选项卡。是否有标签宽度选项?

1 个答案:

答案 0 :(得分:1)

\ s也会匹配一个标签,你显然不希望这样。

$lineArray = preg_split('/\t[ \r\n]*(?=([^"]*"[^"]*")*[^"]*$)/', $line);

应该只通过匹配非制表符空格来解决这个问题。

相关问题