如何通过RegEx排除路径(目录)

时间:2013-10-18 03:30:50

标签: regex

我是regex的新手,目前我们使用一些正则表达式将文件和文件夹从源传输到目标,源包含所有内容,目标只包含它的子集。一个正则表达式是用它排除名为assets及其文件的文件夹,但现在我想做一个例外,我在源根目录中有一个名为test的新文件夹,在该文件夹中它包含一个名为assets的文件夹,我会喜欢通过正则表达式排除它。

  1. 在源目录

    • 资产/...
    • 一个/资产/..
    • B /资产/..
    • C / d /资产/
  2. 我想要的目的地

    • 资产/..
    • 一个/资产/..
    • C / d /资产/..
  3. 基本上只是排除b

    下的资产

    干杯

1 个答案:

答案 0 :(得分:0)

您将无法通过单个正则表达式执行此操作,因为您需要查看集合中的先前项目。

您最好的选择是创建一个树结构并创建一个自定义节点对象,该对象将识别其子节点是否已包含特定值。

完全构建完树后,您可以遍历它并为树现在包含的每个节点构建一个文件夹。

互联网上有很多用于创建树结构的例子。