如何分割文件名在哪里是插入符?如:
6543534 - 001 # 6543534 ^ 16.00.54.JPG
我想把#和^分开。如2016-06-13 16.00.54
我试过这个:
<?php $str = $file['name']; $chars = preg_split('/^#/', $str); print_r($chars); ?>
- 插入符号
^
匹配一行的开头,因此您需要转义它以将其用作普通字符 - 使用管道
|
进行更改,以匹配字符 中的任何一个
所以你想要这样:
$chars = preg_split('/'^|#/', $str);
工作示例:https://3v4l.org/PrTEJ
或者你可以像这样使用字符类[#^]
:
$chars = preg_split('/[#^]/', $str);
两种方法都可以得到一个包含三个元素的数组。
专业提示:将此与list()
方法相结合,并在一步中将字符串分开为单独的变量!
list($number, $date, $filename) = preg_split('/[#^]/', $str);
echo $date . " " . $filename; // 2016-06-13 16.00.54.JPG