Answers:
你不能 GitHub的官方搜索规则:
由于搜索代码的复杂性,执行搜索的方式受到一些限制:
- 仅考虑默认分支。在大多数情况下,这将是master分支。
- 仅小于384 KB的文件可搜索。
- 搜索源代码时,必须始终至少包含一个搜索词。例如,搜索
language:go
无效,而有效amazing language:go
。- 最多,搜索结果可以显示同一文件中的两个片段,但是文件中可能会有更多结果。
- 您不能在搜索查询中使用以下通配符:
. , : ; / \ ` ' " = * ! ? # $ & + ^ | ~ < > ( ) { } [ ]
搜索只会忽略这些符号。
如果您需要在单个存储库中进行搜索,则可以在本地克隆它,并使用它grep
来精确查找字符串:
grep -r "system <<-" /repository_dir
ldap.mycomp.com
呢...如?!?!?!我不需要正则表达式,我只想搜索文字字符串
您可以直接使用Google。
这个怎么样?
"your_string_to_search" site::https://github.com
"your_string_to_search" site::https://gist.github.com
"alias agi=" site::https://github.com/robbyrussell/oh-my-zsh
"your_string_to_search" site:https://github.com filetype:cpp
今天,我试图在Github上任何回购中查找与filter class
in文件完全匹配的文件logback.xml
。我想出了以下查询来完成这项工作。
"filter class" in:file filename:logback.xml
要启用带引号的精确匹配,您需要使用“ in:file”修饰符进行搜索。匹配不是很精确,单词“ class”必须紧随单词“ filter”之后,但似乎两个单词之间可能有0个或多个空格或符号字符。
in:file
。
添加到@ mrgloom的答案中,如果您正在使用Google在Github中寻找特定编程语言的代码,则可以在Google的搜索栏中执行以下操作:
例:
intext:"%% 2 == 0" ext:R site:github.com
intext:".set(" ext:JS site:github.com
无效:/
intext:"set(" inurl:.js site:github.com
一下,但效果
如果您的软件包位于debian中,则可以使用它们的代码搜索来支持正则表达式:https : //codesearch.debian.net/