Вопросов:

Как вы ищите не буквенно-цифровые символы при использовании Google?

Почему Google не всегда буквально интерпретирует строки, заключенные в двойные кавычки?

Что такое escape-символ Google, например как мне искать то, что содержит двойные кавычки?


Фон:

В настоящее время я изучаю Grails. Я читал Освоение Grails: службы Grails и Карты Google (Это очень хорошая серия руководств, кстати), когда я наткнулся на следующую строку кода:

def result = [:]

Глядя на окружающий код, кажется, что result определяется как своего рода карта, но я хотел получить больше информации о том, что именно делает "=[:]".

Как вы можете найти подобное в Google?

Я пробовал искать:

grails "[:]"

Но это возвращает тот же набор результатов, что и поиск "grails".

Это происходит потому, что поиск выполняется только по:

"[:]"

Не возвращает никаких результатов.

Спасибо за ваше время!

5
Heinrich Filter 17 Авг 2009 в 11:42

3 ответа

Лучший ответ

[:] - это пустая карта в Groovy

Вы можете узнать больше о картах и ​​коллекциях здесь или сосредоточьтесь на картах Groovy.

Я думаю, вы предполагаете, что Google собирается выполнить простой «grep», когда его инфраструктура больше настроена для поиска на основе лингвистической модели.

Вы можете попробовать Google Codesearch

Я бы посоветовал вам открыть Groovy Console (groovyConsole в команде- line, если у вас отличная настройка) и поиграйте с картами и списками, чтобы понять это.

3
Colin Harrington 17 Авг 2009 в 19:59
Спасибо @lael за то, что указал мне на документацию! Тем не менее, мои вопросы об использовании Google остаются: (Вы говорите, что Google вообще не индексирует не буквенно-цифровые символы? Я всегда думал, что строки поиска, заключенные в двойные кавычки, ищутся "как есть" (т.е. без применения какой-либо лингвистической логики) ?
 – 
Heinrich Filter
18 Авг 2009 в 10:52
См. google.com/support/websearch/bin/answer.py. ? answer = 134479 В нем говорится, что: «знаки препинания игнорируются (то есть вы не можете искать @ # $% ^ & * () = + [] \ и другие специальные символы)». Поиск Google очень лингвистический по своей природе и поэтому не очень хорошо работает с кодом. При использовании Google вы ищете «слова», а не двоичные шаблоны, для которых можно использовать grep или регулярное выражение. Думаю, это одна из причин, по которой они запустили Google Codesearch. google.com/advanced_search?hl=en
 – 
Colin Harrington
19 Авг 2009 в 00:43
Ага, понятно. Тан объяснит это. Спасибо за ваше время!
 – 
Heinrich Filter
19 Авг 2009 в 11:22
+1 для поиска кода. Я считаю, что он позволяет использовать для поиска регулярные выражения.
 – 
Mechanical snail
9 Окт 2011 в 01:17

К сожалению, вы не можете искать в Google символы, отличные от буквенно-цифровых. Google удаляет символы, считая их пробелами.

Для этого вам нужно обратиться к такой поисковой системе, как SymbolHound, которая специально разработана для программистов. Он в первую очередь индексирует StackOverflow, а индекс других сайтов программирования (форумов, сайтов вопросов и ответов и т. Д.) Растет.

http://www.symbolhound.com

-Том [полное раскрытие: я соучредитель SymbolHound]

0
tcf628 18 Янв 2012 в 00:29
Мне нравится концепция вашей поисковой системы, хотя я должен сказать, что нахожу страницу результатов поиска трудной для чтения и утомительной.
 – 
doelleri
18 Янв 2012 в 00:37

Для поисковых запросов, связанных с кодом, которые Google имеет тенденцию спотыкаться, я обычно пробую duckduckgo. Например, он хотя бы что-то поднимает для [:], даже если он не всегда то, что вы ищете.

0
doelleri 18 Янв 2012 в 00:36