请告诉我匹配以下文件路径的grep模式:
../ any_directoryname / FILENAME.TXT
我只知道文件名。 any_directoryname
不断变化。
提前致谢,
此致
约翰
答案 0 :(得分:4)
试试这个:
\.\./[^/]+/filename.txt
这假定只有一个目录。如果它不止于此,请尝试
\.\./[^\r\n]+/filename.txt
答案 1 :(得分:0)
试试这个正则表达式
^\.\.\/[\w]+\/[\w\.]+$
答案 2 :(得分:0)
如果您知道文件名并想从字符串中提取路径,请使用
str_replace('/filename.txt', '', $full_path);
如果文件和路径都不同,正则表达式是不可靠的(你只能使用文件系统命令找出某个文件或目录,名称检查不会告诉你),如果其中一个没有'不一样,你根本不需要正则表达式。
答案 3 :(得分:0)
怎么样......
(Perl回答......)
对于给定的路径/文件名,格式为:
$fullPath = /dir/dir/dir/filename
($path, $file) = $fullPath =~ m/(^\/.*\/)(\S+$)/;
那就是
$path = /dir/dir/dir/...
$file = filename