繁体   English   中英

PHP RegEx提取文件名

[英]PHP RegEx extract filename

我需要您的PHP正则表达式帮助

我有一个类似的东西:Vacation.jpg,我正在寻找一个RegEx,它仅提取文件名的“假期”。 有人能帮我吗?

不要为此使用正则表达式-使用basename

$fileName = basename($fullname, ".jpg");

您可以使用pathinfo代替Regex。

$file = 'vacation.jpg';
$path_parts = pathinfo($file);
$filename = $path_parts['filename'];

echo $filename;

如果您确实需要正则表达式,那么可以使用它:

$success = preg_match('~([\w\d-_]+)\.[\w\d]{1,4}~i', $original_string, $matches);

内部比赛中,您将拥有文件名的第一部分。

已经提供了更好的答案,但这是另一种选择!

$fileName = "myfile.jpg";
$name = str_replace(substr($fileName, strpos($fileName,".")), "", $fileName);

您不需要正则表达式。

方法1:

$str = 'vacation.jpg';
$parts = explode('.', basename($str));
if (count($parts) > 1) array_pop($parts);
$filename = implode('.', $parts);

方法2(最好使用pathinfo() ):

$str = 'vacation.jpg';
$filename = pathinfo($str, PATHINFO_FILENAME);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM