注意:以下语法适用于非代码搜索。有关代码搜索语法的更多信息,请参阅“了解 GitHub 代码搜索语法”。
查询大于或小于另一个值的值
您可以使用 >
、>=
、<
和 <=
搜索大于、大于或等于、小于和小于或等于另一个值的值。
查询 | 示例 |
---|---|
>n | cats stars:>1000 匹配包含单词“cats”且星标数超过 1000 的仓库。 |
>=n | cats topics:>=5 匹配包含单词“cats”且主题数为 5 或更多 的仓库。 |
<n | cats size:<10000 匹配包含单词“cats”且文件大小小于 10 KB 的代码。 |
<=n | cats stars:<=50 匹配包含“cats”且星标数不超过 50 的仓库。 |
您还可以使用 范围查询 来搜索大于或等于,或小于或等于另一个值的数值。
查询 | 示例 |
---|---|
n..* | cats stars:10..* 等同于 stars:>=10 ,匹配包含“cats”且星标数不少于 10 的仓库。 |
*..n | cats stars:*..10 等同于 stars:<=10 ,匹配包含“cats”且星标数不超过 10 的仓库。 |
查询范围内的值
您可以使用范围语法 n..n
来搜索范围内的值,其中第一个数字 N 是最低值,第二个数字是最高值。
查询 | 示例 |
---|---|
n..n | cats stars:10..50 匹配包含“cats”且星标数在 10 到 50 之间的仓库。 |
查询日期
您可以使用 >
、>=
、<
、<=
和 范围查询 来搜索早于或晚于另一个日期,或落在日期范围内的日期。日期格式必须遵循 ISO8601 标准,即 YYYY-MM-DD
(年-月-日)。
查询 | 示例 |
---|---|
>YYYY-MM-DD | cats created:>2016-04-29 匹配包含“cats”且创建日期在 2016 年 4 月 29 日之后的 Issue。 |
>=YYYY-MM-DD | cats created:>=2017-04-01 匹配包含“cats”且创建日期在 2017 年 4 月 1 日或之后的 Issue。 |
<YYYY-MM-DD | cats pushed:<2012-07-05 匹配包含“cats”且最后推送日期在 2012 年 7 月 5 日之前的仓库。 |
<=YYYY-MM-DD | cats created:<=2012-07-04 匹配包含“cats”且创建日期在 2012 年 7 月 4 日或之前的 Issue。 |
YYYY-MM-DD..YYYY-MM-DD | cats pushed:2016-04-30..2016-07-04 匹配包含“cats”且最后推送日期在 2016 年 4 月底到 7 月之间的仓库。 |
YYYY-MM-DD..* | cats created:2012-04-30..* 匹配包含“cats”且创建日期在 2012 年 4 月 30 日之后的 Issue。 |
*..YYYY-MM-DD | cats created:*..2012-07-04 匹配在 2012 年 7 月 4 日之前创建的包含“cats”一词的问题。 |
您也可以在日期后添加可选的时间信息 THH:MM:SS+00:00
,按小时、分钟和秒进行搜索。即 T
,后跟 HH:MM:SS
(小时-分钟-秒),以及 UTC 偏移量 (+00:00
)。
查询 | 示例 |
---|---|
YYYY-MM-DDTHH:MM:SS+00:00 | cats created:2017-01-01T01:00:00+07:00..2017-03-01T15:30:15+07:00 匹配在 2017 年 1 月 1 日凌晨 1 点(UTC 偏移量为 07:00 )到 2017 年 3 月 1 日下午 3 点 15 分(UTC 偏移量为 07:00 )之间创建的问题。 |
YYYY-MM-DDTHH:MM:SSZ | cats created:2016-03-21T14:11:00Z..2016-04-07T20:45:00Z 匹配在 2016 年 3 月 21 日下午 2:11 到 2016 年 4 月 7 日晚上 8:45 之间创建的问题。 |
排除与限定词匹配的结果
您可以通过排除一个或多个子集来缩小搜索结果范围。要排除与限定词匹配的所有结果,请在搜索限定词前添加连字符 (-
)。
查询 | 示例 |
---|---|
-QUALIFIER | cats stars:>10 -language:javascript 匹配包含“cats”一词且星标数超过 10 个,但不是用 JavaScript 编写的仓库。 |
-QUALIFIER | mentions:defunkt -org:github 匹配提到 @defunkt 但不在 GitHub 组织的仓库中的问题。 |
排除包含特定关键字的结果
您可以使用 NOT
语法排除包含特定词语的结果。NOT
运算符只能用于字符串关键字。它不适用于数字或日期。
查询 | 示例 |
---|---|
NOT | hello NOT world 匹配包含“hello”一词但不包含“world”一词的仓库。 |
对包含空格的查询使用引号
如果您的搜索查询包含空格,则需要用引号将其括起来。例如
- cats NOT "hello world" 匹配包含单词“cats”但不包含单词“hello world”的仓库。
- build label:"bug fix" 匹配包含单词“build”且带有“bug fix”标签的问题。
包含用户名查询
如果您的搜索查询包含需要用户名的限定符,例如 user
、actor
或 assignee
,您可以使用任何 GitHub 用户名来指定特定人员,或者使用 @me
来指定当前用户。
查询 | 示例 |
---|---|
限定符:用户名 | author:nat 匹配由 @nat 提交的提交。 |
限定符:@me | is:issue assignee:@me 匹配分配给查看结果的人员的问题。 |
您只能将 @me
与限定符一起使用,而不能作为搜索词使用,例如 @me main.workflow
。