我试图用多个定界符分割一个简单的字符串,但是得到了意外的结果。
考虑以下字符串: “ 1_10_10-Einzel.pdf”
使用此调用preg_split:
mountPath
我期望以下输出:
$cut = preg_split("/[_\-\.]/", "1_10_10-Einzel.pdf", PREG_SPLIT_NO_EMPTY|PREG_SPLIT_DELIM_CAPTURE);
print_r($cut);
,但实际上我得到的是:
Array
(
[0] => 1
[1] => 10
[2] => 10
[3] => Einzel
[4] => pdf
)
我玩了一些括号,标志,当然还有不同的正则表达式,但是我没有得到预期的行为。我还尝试了一些与stackOverflow完全不同的示例,但也得到了错误的结果。我想念什么吗?
答案 0 :(得分:3)
参数3是极限,4是标志。试试:
$cut = preg_split("/[_.-]/", "1_10_10-Einzel.pdf", -1, PREG_SPLIT_NO_EMPTY|PREG_SPLIT_DELIM_CAPTURE);
print_r($cut);
.
不需要在字符类中转义。 -
也不是第一个还是最后一个。