从 Php 中的字符串中删除字符
Removing Characters From String In Php
文件名
cars-lights-neon-1920x1080.jpg
cars-lights-neon-3840x2160.jpg
cars-lights-neon-800x600.jpg
我需要的是
cars-lights-neon.jpg
我试过的
$name="cars-lights-neon-1920x1080.jpg";
$newname = substr($name, 0, -4); //removing.jpg
// Real name
$rev= strrev("$newname"); // outputs "0801x0291-noen-sthgil-srac"
$revok= strstr($rev, '-'); //outputs "-noen-sthgil-srac"
$neutral = strrev("$revok"); //outputs "cars-lights-neon-"
$neutral = substr($neutral, 0, -1); //outputs "cars-lights-neon"
$filename = $neutral.".jpg"; //outputs "cars-lights-neon.jpg";
这段代码也可以正常工作..但它可以通过简单的步骤完成..所以我要问的是更好的代码..
//文件名和分辨率来自数据库,所以每次都不一样..
谢谢
只需像
一样使用PHP的preg_replace
函数
$name = "cars-lights-neon-1920x1080.jpg";
echo preg_replace('/(-\d+x\d+)/','',$name);//cars-lights-neon.jpg
您可以使用 preg_replace
:
$string = 'cars-lights-neon-1920x1080.jpg';
$filename = preg_replace('/-[0-9]{3,4}x[0-9]{3,4}/', '', $string);
文件名
cars-lights-neon-1920x1080.jpg
cars-lights-neon-3840x2160.jpg
cars-lights-neon-800x600.jpg
我需要的是
cars-lights-neon.jpg
我试过的
$name="cars-lights-neon-1920x1080.jpg";
$newname = substr($name, 0, -4); //removing.jpg
// Real name
$rev= strrev("$newname"); // outputs "0801x0291-noen-sthgil-srac"
$revok= strstr($rev, '-'); //outputs "-noen-sthgil-srac"
$neutral = strrev("$revok"); //outputs "cars-lights-neon-"
$neutral = substr($neutral, 0, -1); //outputs "cars-lights-neon"
$filename = $neutral.".jpg"; //outputs "cars-lights-neon.jpg";
这段代码也可以正常工作..但它可以通过简单的步骤完成..所以我要问的是更好的代码..
//文件名和分辨率来自数据库,所以每次都不一样.. 谢谢
只需像
一样使用PHP的preg_replace
函数
$name = "cars-lights-neon-1920x1080.jpg";
echo preg_replace('/(-\d+x\d+)/','',$name);//cars-lights-neon.jpg
您可以使用 preg_replace
:
$string = 'cars-lights-neon-1920x1080.jpg';
$filename = preg_replace('/-[0-9]{3,4}x[0-9]{3,4}/', '', $string);