搜索项目或文件#

要搜索项目和文件,请使用AEN导航栏中的搜索框。根据您从哪个页面进行搜索,搜索结果会有所不同:

  • 在项目主页上,搜索结果包括当前项目中符合您搜索条件的任何文件。

  • 在任何其他AEN页面上,搜索结果包括所有项目中符合您搜索条件的任何文件。

提示:您的搜索结果仅包括您可以查看的文件和项目:公共项目,以及您至少具有查看权限的私有项目。

搜索的文件类型#

搜索结果中包含以下类型的文件:

  • .py—Python 源文件。

  • .ipynb—IPython/Jupyter 笔记本。

  • .txt—纯文本文件。

  • .md—Markdown 文件。

搜索索引#

在项目运行时被修改的文件会在文件修改后不久自动重新索引。如果您创建或更新了大量文件——例如克隆一个git仓库或复制一个目录——搜索结果可能需要几分钟才能更新。

在项目未运行时修改的文件仅在项目启动后重新索引。

使用搜索结构#

您可以使用以下搜索结构:

  • 普通词语将匹配任何文件的全文内容。

  • 允许使用通配符。

    示例:John* 将匹配 John 和 Johnny。这些是 通配符模式,类似于它们在命令行中的使用。

  • 使用ANDOR组合查询,并使用括号()将它们分组。

正则表达式模式可以通过将它们包裹在正斜杠中嵌入查询字符串(/):

name:/joh?n(ath[oa]n)/

支持的正则表达式语法在 Elasticsearch 参考文档中有详细解释。

注意:通配符适用于正则表达式内部。查询字符串如 /.*n/ 将强制搜索访问索引中的每个术语。

搜索元数据字段#

您可以在特定的元数据字段中搜索:

  • imports:name—匹配导入模块名称的文件。

  • uses:name—匹配引用标识符名称的文件。引用的名称包括从其他模块导入的任何函数和全局变量,以及在任何对象上调用的任何方法的名称。

  • defines:name—匹配定义标识符名称的文件。定义的名称包括在全局范围内定义的函数、类名以及类中的方法名。

  • acl:user—匹配指定用户具有读取权限或更高权限的文件。

搜索项目#

  1. 在搜索框中,输入一串文本:

    提示:通过glob模式进行搜索,这类似于命令行中的文件匹配。

    示例:要查找编号从00到99的测试系列项目,请搜索Test-??。要查找名称以“Stats”结尾的所有项目,请搜索*Stats

  2. 按下回车键。

  3. 在搜索结果中,点击项目名称上方的加号 + 图标,以显示所选项目中的匹配文件列表:

    提示:点击项目名称以打开项目的主页。

  4. 要查看文件,请在匹配文件列表中点击其文件名: