2017-08-04 48 views
1

我们正试图找出一种方法来搜索包含多个术语的所有文件。例如,引用订单文件,然后是状态字段。搜索状态字段作为单独的订单有状态不正常工作,项目具有的地位,...Visual Studio代码:多项搜索

有一个能够满足我们对搜索,我可以拿出需要两个选项:

  1. 执行搜索,然后只能在第一次搜索的结果中搜索。

  2. 使用(?=)语法使用AND关键字(Orders AND status)或等效的正则表达式概念执行搜索。

Visual Studio代码似乎不支持这两种方法之一。任何建议如何做到这一点?谢谢!

回答

2

我们正在试图找出一种方法来搜索所有...引用订单文件然后状态字段中的文件。 [强调加]

我们可以使用正则表达式。 (.|\n)*表达式充当AND关键字。在以下语法中,术语的顺序很重要。

(searchExpression1)(.|\n)*(searchExpression2)(.|\n)*(searchExpressionN) 

(.|\n)*表达说,“任何数量的字符或新的生产线都可以在搜索项之间来了。”

以下是针对您的问题用例量身定制的相同表达式。

("\./orders")(.|\n)*(status) 

注意,搜索结果只包括foo.ts文件,因为文件引用orders文件,然后有一个status变量,而其他文件只有在status变量。

enter image description here

您已经使用(?=)语法建议。 VSCode file search does not support lookaround operators,因为“我们现在使用ripgrep进行搜索,该搜索使用Rust正则表达式引擎。”