fork download
  1. <?php
  2. $str='|значение1|значение2\\\\|значение 2.1\|значение 3';
  3. $arr=preg_split('/(?:[^\\\\]|[^\\\\](?:\\\\{2})+|^)\K\|/',$str);
  4. var_dump($arr);
  5. // your code goes here
Success #stdin #stdout 0s 82944KB
stdin
Standard input is empty
stdout
array(4) {
  [0]=>
  string(0) ""
  [1]=>
  string(17) "значение1"
  [2]=>
  string(19) "значение2\\"
  [3]=>
  string(40) "значение 2.1\|значение 3"
}