Используется для поиска в рамках проектов, размещенных на Google Code
Google Code Search — проект поисковой машины от Google Labs, индексировавшей исходные коды открытых программ, и позволявшей использовать в поисковых запросах регулярные выражения[1]. В виде бета-версии работал с 5 октября 2006 года по 15 января 2012 года[2]. Закрыт в связи с закрытием Google Labs.
Кроме поддержки регулярных выражений[1], имелась возможность более точного поиска с помощью специальных операторов. Среди них: lang: (указание языка программирования[1]), package: (имя проекта), license: (лицензия[1]) и file: (имя файла).
Индексировался код программ, хранившихся в различных форматах, включая tar.gz, tar.bz2, .tar, .zip, репозитории CVS и Subversion.
В ограниченном виде наработки Google Code Search продолжают использоваться для поиска в рамках кодов проекта Chromium, код которого расположен на сайте Google Code.[3]
Автором проекта, Russ Cox, была опубликована пара консольных утилит Cindex/Csearch, предоставляющая возможность индексирования и поиска по исходным кодам. Утилиты используют схожие с Google Code Search принципы, хотя не могут масштабироваться более чем на несколько десятков гигабайт исходников.[4]
Сайт позволял использовать регулярные выражения в запросах и искал любые символы (в отличие от обычных поисковиков, которые игнорируют нетекстовые символы[5]). На момент создания такими возможностями не обладали другие поисковые системы. Это делало его похожим на программу grep, который выполняет поиск по огромной базе открытого исходного кода. Используется поиск на базе индекса триграмм и собственной реализации POSIX-совместимых регулярных выражений — RE2, написанной Russ Cox.[6] Исходные коды RE2 были открыты в марте 2010 .[7]
Google Code Search поддерживал POSIX-расширенный синтаксис регулярных выражений, за исключением обратных ссылок, сопоставления элементов и сортировки классов.[8]
Интересные факты
Некоторое время в 2008 году результаты поиска Code Search могли интегрироваться в основную поисковую выдачу Google[9].
Code Search применялся хакерами для поиска уязвимостей в программах[11][12][13]. Были найдены тысячи небезопасных фрагментов кода[14]
Примечания
↑ 12345Ed Burnette.Google: Code search and movies and gadgets, oh my!(англ.). ZDNet Dev Connection (5 октября 2006). — «Code search. This is for developers to help them find open source code. Features include the ability to search by regular expressions (go{2}gle), by language (lang:"c++" sprintf.*%s), or by license (-license:gpl quicksort).» Дата обращения: 17 ноября 2013.