匹配文件路径的模式

发布于 2024-11-06 20:02:26 字数 192 浏览 0 评论 0原文

您能告诉我匹配以下文件路径的 grep 模式吗:

../any_directoryname/filename.txt

我只知道文件名。 any_directoryname 不断变化。

预先感谢,

问候

约翰

Can you please tell me the grep pattern for matching the following filepath:

../any_directoryname/filename.txt

I only know the filename. The any_directoryname keeps on changing.

Thanks in advance,

Regards

John

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

水溶 2024-11-13 20:02:26

试试这个:

\.\./[^/]+/filename.txt

这假设只有一个目录。如果可以不止于此,请尝试

\.\./[^\r\n]+/filename.txt 

Try this:

\.\./[^/]+/filename.txt

This assumes only one directory. If it can be more than that, try

\.\./[^\r\n]+/filename.txt 
糖果控 2024-11-13 20:02:26

如果您知道文件名并想从字符串中提取路径,请使用

str_replace('/filename.txt', '', $full_path);

如果文件和路径都不同,则正则表达式不可靠(您只能使用文件系统命令找出某个文件或目录,名称检查不会告诉你这一点),如果两者之一没有变化,则根本不需要正则表达式。

If you know the filename and want to extract the path from the string, use

str_replace('/filename.txt', '', $full_path);

A regex is not reliable if both file and path vary (you can only find out if something is a file or directory using filesystem commands, name checking is not going to tell you that), and if one of the two doesn't vary, you don't need a regex at all.

源来凯始玺欢你 2024-11-13 20:02:26

试试这个正则表达式

^\.\.\/[\w]+\/[\w\.]+$

try this regex

^\.\.\/[\w]+\/[\w\.]+$
不可一世的女人 2024-11-13 20:02:26

怎么样...

(Perl 答案...)

形式为:

$fullPath = /dir/dir/dir/filename

($path, $file) = $fullPath =~ m/(^\/.*\/)(\S+$)/;

对于给定的路径/文件名,其

$path = /dir/dir/dir/...
$file = filename

How about...

(A Perl answer...)

For a given path/filename in the form of:

$fullPath = /dir/dir/dir/filename

($path, $file) = $fullPath =~ m/(^\/.*\/)(\S+$)/;

That puts

$path = /dir/dir/dir/...
$file = filename
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文