我所有的代码都在这里
$pathinfo = pathinfo($fullpath);
$tags = $shortpath;
$tags = str_replace("/", " ", $tags);
$tags = str_replace("__", " ", $tags);
$tags = str_replace(".png", "", $tags);
$tags = str_replace(".jpg", "", $tags);
$tags = str_replace(".jpeg", "", $tags);
$tags = str_replace(".gif", "", $tags);
上面的一切都运行正常,但我还需要在我添加的文件的开头替换一些数字
文件的例子是
247991 - my_small_house.jpg
它在“ - ”之前的数字我需要消失 可以这样做吗?
由于
答案 0 :(得分:2)
你可以使用带有preg_replace()或preg_split()的正则表达式,但我认为explode()会更好:
$chunks = explode('-',$shortpath); // you just keep the part after the dash
$tags = str_replace(array('/','__'),' ', $chunks[1]);
$tags = str_replace(array('.png','.jpg','.jpeg','.gif'),'',$tags);
/* used array to avoid code repetition */
答案 1 :(得分:1)
您必须删除的号码是否由固定数字组成? 如果是这样,你可以这样做:
$tags = substr($tags, 9);
否则,如果你确定每个数字都以“ - ”结尾,你可以这样做:
$tags = substr($tags, strrpos($tags," - ") + 3);
答案 2 :(得分:0)
试试这个:
preg_replace('/^[0-9]+(.+)/', '$1', $tags);