Github使用正则表达式进行搜索

13

有没有办法使用正则表达式在 Github 仓库中搜索代码?

目前,我只能克隆仓库并进行搜索。

但我想要输入类似这样的内容:

s/foo/gi

并在代码中查找所有出现的 "foo":

foo.create
foo.extend
fooBar
barFoo
bar.foo

这可能吗?我有遗漏什么在文档中


这可能更适合于http://SuperUser.com,但我认为它在这里也不是完全不合适的。 - FrankieTheKneeMan
1
对于任何感兴趣的人,这是 搜索 GitHub搜索存储库 的文档。 - user456814
那么,我猜这意味着它不支持正则表达式。 - Dan Williams
@FrankieTheKneeMan(和其他人)。我的理解是,与编程工具相关的问题现在已经成为本网站的主题。 - PaulG
参见:https://docs.github.com/en/github/searching-for-information-on-github/understanding-the-search-syntax回答问题:我希望我能够直接跳转到 Github,搜索一个包含 s/foo/g 的存储库,然后就完成了。不行(截至2021年4月)。 - dreftymac
4个回答

1

1
在代码搜索文档中查找正则表达式(因为它很难找到): https://docs.github.com/en/search-github/github-code-search/understanding-github-code-search-syntax#using-regular-expressions - undefined
而且它是使用 Rust 的正则表达式库实现的: https://github.com/orgs/community/discussions/9876#discussioncomment-1949013 - undefined

0

Livegrep可以对数以千兆字节计的源代码库进行交互式正则表达式搜索。


-1

使用关键字“OR”?

foo.create OR foo.extend OR fooBar OR barFoo OR bar.foo

编辑:抱歉,我回答了与您需求不符的问题。


虽然有一种方法可以做到这一点,但它需要知道所有不同的工作方式。我会更新以使其更准确。 - Dan Williams

-1

既然这是一个Git仓库,为什么不在本地克隆它,然后使用git grep和其中的正则表达式选项之一呢?

git grep [-w | --word-regexp]
         [-E | --extended-regexp] [-G | --basic-regexp]
         [-P | --perl-regexp]

所以也许可以考虑类似于这样的东西

$ git clone repo
$ git grep -w foo

8
这就是我一直在做的事情,但我希望我能够跳转到 Github 上,搜索一个包含 s/foo/g 的存储库,然后就完成了。我想这是不可能的。 - Dan Williams
4
“为什么不在本地克隆它呢”- 一些大型公共代码库克隆起来需要很长时间。在等待Git克隆TypeScript库完成的过程中,我有时间搜索这个问题并阅读了几页相关内容,并撰写了这个评论。请注意,我的翻译保持原意并尽可能通俗易懂,不包含任何解释或额外信息。 - alexanderbird

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接