用分号分割字符串,同时考虑字符串和转义引号或分号



我仍然在试图找出一种方法来考虑转义引号,如"test";nosplit"'test';nosplit'

到目前为止,我有这样的东西:

preg_split('#(^;)|(;$)|(?<!["'\]);#', $str_to_split);

但它甚至没有工作在一些简单的:test; 1; 2; '34;34'; wtvr

我想让它在这些地方分开:

    v  v  v        v
test; 1; 2; '34;34'; wtvr
    v  v v            v
test; 1;2; '34'34;34'; wtvr 
    v  v v            v
test; 1;2; "34"34;34"; wtvr
    v  v v            v
test; 1;2; '34"34;34'; wtvr 
    v  v v            v
test; 1;2; "34'34;34"; wtvr
    v  v v                    v
test; 1;2; "3 4 ' 3  4 ; 3 4"; wtvr

我怎样才能使它工作?

为什么不用str_getcsv呢?

var_dump (str_getcsv("测试;1;2;"34;34";wtvr ",";","'"));

http://ideone.com/JoFkr7

相关内容

  • 没有找到相关文章

最新更新