我正在尝试创建一个正则表达式来查找文本中的 Linux 文件路径,但是正则表达式对我来说非常陌生。我有下面的代码片段,它将识别下面文件结构的开头。
.*(/bin/|/home/).*
完成正则表达式以在“/bin/”或“/home/”之后获取任何可能的子目录和文件的最佳方法是什么?
感谢任何帮助!
最佳答案
虽然您的 RegEx 在技术上确实选择了所有子目录和文件,但试试这个 RegEx:
.*(/bin/|/home/)(\w+(?:\.\w+)+|(\w+/))+
每个文件夹的文件将存储在不同的组中
工作原理:
.*(/bin/|/home/) # Select /bin/ or /home/
( # Capture each sub-directory or file
\w+(?:\.\w+)+ # File name (with extension(s))
| # OR
(\w+/) # Final Folder Name
)+ # Capture each one or more times
关于python - 完整 Linux 文件路径的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35632584/