Advanced Search
使用高級搜索可以讓你近一步縮小搜索範圍,你可以通過stars數目、forks數目、文件後綴名等過濾。當你在條件輸入框填寫條件的時候,它會自動的把高級查詢拼接到上面的輸入框中。
GitHub Search Syntax
Search Syntax
如果你想精確的查找搜索結果,你可以一直使用高級搜索,但是,使用正確的搜索語法可以幫助你更快速的找到你想要的結果,下面就介紹幾種搜索語法。
Greater Than Queries
設想你想找所有與‘cats’有關的項目,而且篩選出它被用戶標記星號(stars)的次數大於10次。你可以使用一些操作符幫助你完成。
>>
和 >=
符號代表“大於”和”大於等於”。例如下邊的兩個例子是等價的
>cats stars:">10"
>cats stars:">=10"
>你也可以使用更加程序化的符號..*
,它等價於>=
,代表查找所有大於等於10的。
>cats stars:"10..*"
>符號*
可以代表任意數字,所以10
.. 50
等價於”所有大約等於10取小於等於50”。
Less Than Queries
如果你想找所有與‘cats’有關的項目,而且篩選出它被用戶標記星號(stars)的次數小於10次。你可以使用類似的一些操作符幫助你完成。
><
和 <=
符號代表“小於”和”小於等於”。例如下邊的兩個例子是等價的
>cats stars:"<10"
>cats stars:"<=9"
>你也可以使用更加程序化的符號*..
,它等價於<=
,代表查找所有小等於10的。
>cats stars:"*..10"
>符號*
可以代表任意數字,所以1
.. 10
等價於”所有大約等於1取小於等於10”。
Range Queries
當你要查找一些沒有‘數量’標記的項目時,range查詢這時就能顯出2它的威力來了,比如你還是要查找與’cat’相關的項目,並且上次的更新時間在2014年1月低到今天的2014年2月28
>cats pushed:2014-01-31..2014-02-28
Omitting Spaces
如果你更傾向更短的標記和更少的字符的話,你可以刪除引號以及查詢條件中多餘的空格,僅當查詢的條件中包含空格的時候才需要引號
>cats stars:>10
>cats stars:<10
>cats pushed:2014-01-30..2014-02-28
The power of NOT
你可以使用NOT
符號從你的搜索條件中排除關鍵字的項目,比如搜索···Hello···會返回很多包含Hello
World
相關的項目,但是如果在搜索條件中加入NOT像這樣:
>Hello NOT World
就會過濾掉排除包含World
的。
`NOT
符號只能用於String類型的關鍵字
Filtering using Exclusion
另一種縮小搜索範圍的方式是排除子集。在搜索的條件的前面帶上-
,就能排除所有符合條件的結果集
比如你想查找所有包含’cats’並且’stars’數量大於10並且不使用’javascript’
>cats stars:>10 -language:javascript
查找所有沒有@defunkt的issues:
>mentions:defunkt -user:github
轉自:http://www.shaojie.name/blog/2014/02/23/advanced-search/