如何用分隔符分割字符串,但如果它被转义则不能分割?例如,我有一个字符串:
1|2\|2|3\\|4\\\|4
分隔符是|
转义分隔符是\|
。此外,我想忽略转义的反斜杠,所以在\\|
the |
仍然是一个分隔符。
因此,使用上面的字符串,结果应该是:
[0] => 1
[1] => 2\|2
[2] => 3\\
[3] => 4\\\|4
使用黑魔法:
$array = preg_split('~\\\\.(*SKIP)(*FAIL)|\|~s', $string);
\\\\.
匹配反斜杠后跟一个字符,(*SKIP)(*FAIL)
跳过它并且\|
与您的分隔符匹配。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)