首先感谢尝试帮助我!如何使用正则表达式从路径中提取字符串?
我需要从这个路径目录提取字符串“视频”:
/D/Servers/Domain/www/domain.com/administrator/components/com_videos/videos.php
如何着手解决这个问题呢?
首先感谢尝试帮助我!如何使用正则表达式从路径中提取字符串?
我需要从这个路径目录提取字符串“视频”:
/D/Servers/Domain/www/domain.com/administrator/components/com_videos/videos.php
如何着手解决这个问题呢?
问题的标题明确指出,他希望一个正则表达式的解决方案。
所以,你要寻找的正则表达式是:
/(\w+)\.php$/
这个问题显然是一个X-Y问题:http://mywiki.wooledge.org/XyProblem –
如果您知道分机总是会.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"
是的,你是对的。让我们希望我们的答案将帮助OP。 – BlitZ
感谢帮助,但我需要使用Sublime Text 2,在Snippet文件中,我需要正则表达式来完成它... –
sublime文本在其核心中使用python。有python可以做到这一点。 –
我不认为,那里需要正则表达式。
的一种方式是使用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
如此有趣的竞争问题在前几分钟如何演变 –
感谢帮助,但我需要使用Sublime Text 2,在Snippet文件中,我需要正则表达式来做到这一点...... –
好了,因为这不是一个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"
你在做什么?这是一个PHP和Joomla!题。 –
阅读OP对其他答案的评论。这是一个崇高的文字问题。 –
好吧,我现在看到它:)超级怪异:) –
我会建议使用JPATH
rathing不是定义的完整路径,因为它是使用Joomla编码标准:
$path = JPATH_ROOT . "/administrator/components/com_videos/videos.php";
basename($path, ".php");
得到答案你应该发布一些代码来证明你已经尝试过自己做这件事。这是一个问答网站,但有自己的规则.http://stackoverflow.com/help/on-topic。阅读并申请。 – zubergu