首先感谢尝试帮助我!
我需要从此路径目录中提取字符串“videos”:
/D/Servers/Domain/www/domain.com/administrator/components/com_videos/videos.php
如何着手解决这个问题?
首先感谢尝试帮助我!
我需要从此路径目录中提取字符串“videos”:
/D/Servers/Domain/www/domain.com/administrator/components/com_videos/videos.php
如何着手解决这个问题?
我不认为那里需要正则表达式。
一种方法是使用basename()
+strstr()
函数:
<?php
$path = '/D/Servers/Domain/www/domain.com/administrator/components/com_videos/videos.php';
echo strstr(basename($path), '.', true);
?>
显示:
videos
另一种方法是使用pathinfo
:
<?php
$path = '/D/Servers/Domain/www/domain.com/administrator/components/com_videos/videos.php';
echo pathinfo($path, PATHINFO_FILENAME);
?>
显示:
videos
问题的标题清楚地表明他想要一个正则表达式解决方案。
所以你正在寻找的正则表达式是:
/(\w+)\.php$/
如果您知道扩展名将始终为.php
:
http://php.net/manual/en/function.basename.php
$path = "/D/Servers/Domain/www/domain.com/administrator/components/com_videos/videos.php";
basename($path, ".php"); // returns "videos.php"
或者,如果您不知道扩展名:
http://www.php.net/manual/en/function.pathinfo.php
$path = "/D/Servers/Domain/www/domain.com/administrator/components/com_videos/videos.php";
$pathinfo = pathinfo($path);
$pathinfo['filename']; // equals "videos"
我建议使用JPATH
rathing 而不是定义完整路径,因为它使用 Joomla 编码标准:
$path = JPATH_ROOT . "/administrator/components/com_videos/videos.php";
basename($path, ".php");
好吧,因为这不是一个 php 问题,而是一个 sublimetext 问题,它实际上是一个 python 问题:
import os
path = "/D/Servers/Domain/www/domain.com/administrator/components/com_videos/videos.php"
os.path.splitext(os.path.basename(path))[0] # outpus "videos"