Programcı dostu arama motoru? [kapalı]


123

Google, $ ve # gibi karakterlere sahip kelimesi kelimesine dizeleri aramak konusunda dostça davranmaz. Birebir dizeleri aramayı destekleyen bir arama motoru var mı?

Bir süre önce sorulan bu sorunun farkındayım , ancak iyi bir cevap alamadım. Hâlâ cevap alamazsam, ödül koymaya hazırım. Elbette olmaması tamamen mümkün ama emin olmak istiyorum :)

DÜZENLEME: Alıntılar çalışmıyor . Google, alıntılansa bile sembolleri çıkarır.

Örnek sorgu: makefiles içindeki $ <değişkeni için "$ <" yapın.


6
İnterneti tıpkı google kullanırken olduğu gibi, çoğunlukla dokümantasyon için aramak istiyorum. Ben değilim değil kod ararken.
static_rtti

5
Belgelerde kod parçacıkları arıyorum. Kod arama motorları benim için çalışmıyor, çünkü pek çok ilgisiz kaynak kodunu dokümantasyon olmadan döndürüyorlar ki bu benim için işe yaramaz.
static_rtti

4
Daha spesifik olarak, "$ <yap" durumunda, kullanım durumu şu şekildedir: Bir makefile içinde $ <ile karşılaşıyorum ve ne yaptığını bilmek istiyorum. Ne dendiğini bilmiyorum, bu yüzden google'ı bunun için kullanamam. Bana bu özel soruna iyi bir çözüm verebilirseniz , ödül tam size göre .
static_rtti

1
Bu soruyu programcı olmadan önce sormadıysanız.
L̲̳o̲̳̳n̲̳̳g̲̳̳p̲̳o̲̳̳k̲̳̳e̲̳̳

Yanıtlar:


77

Http: //www.symbolhound.com'u deneyin .

Bu probleminizi çözüyor gibi görünüyor. SymbolHound, google'ın yaptığı gibi web sorgularındaki sembolleri veya özel karakterleri göz ardı etmeyen bir arama motorudur. Bu bir kaynak kodu araması da değil. Umarım yardımcı olur!


6
Görünüşe göre artık çalışmıyor ...
Dmitry Trofimov

3
boş sonuç sayfasını görüntülediği için "çalışmıyor"
serv-inc

2
Symbolhound kapalıysa, stackse'i deneyin . Ben yazarım ve devam eden bir çalışma, ama şimdiye kadar kullanılabilir.
ren

4

Size yardımcı olamaz, ancak en azından size bir vizyon sağlayabilir (belki de aynı girişim bunun farkına varabilir).

Assieme, yazılım dokümantasyonu için özel bir arama motorunun araştırma prototipidir. Buradaki fikir, yazılım belgelerini araştırmanın, özel arama motorları gerektiren özel bir görev olmasıdır. Örneğin, APi belgelerini ararken, motor aynı zamanda örneğin blog gönderilerinden geçerli örnekler çıkarmalı ve bunları bize göstermelidir. Ve benzeri.

Makalenin tamamı için lütfen şu adrese bakın: "Assieme, Programcılar İçin Bir Web Arama Arayüzünde Örtülü Referansları Bulma ve Kullanma"

Not: Yazılım aramayla ilgili en son araştırmalarla ilgileniyorsanız, SUITE atölye serisine göz atabilirsiniz . Ayrıca twitterdayız :)


Hmm, Assieme ilginç görünüyor, ama belli ki sadece Java
içindi

2

Yahoo BOSS'u denediniz mi? Yahoo'nun web aramasını kullanabileceğiniz, şu anda ücretsiz olan (kaydolmayı gerektirir) bir arama API'sidir. Sıkça Sorulan Sorular'da açıklandığı gibi tüm ilgili karakterlerden kaçış yaparsanız, keyfi kelimesi kelimesine dizeleri arayabilirsiniz.


1
Bağlandığınız o sayfa herhangi bir şey söylemiyor. Sadece BOSS bağımsız değişken değerlerinde bir URL'de kullanıldığında öncelenmesi gereken karakterlerin bir listesini verir.
mercator


0

Muhtemelen bu tam olarak aradığınız cevap değil, ama bu soruna ve bu sorunun karşılaştığı garip uzaklığa gerçekten sempati duyuyorum.

Bu durumda, aradığınız şey hakkında zaten bazı bilgilere sahipsiniz. Dosya oluşturmak için bazı dokümantasyon sayfasının belirli bir bölümünü arıyorsunuz.

makefiles için belgeler http://www.gnu.org/software/make/manual/make.html

Elverişli olarak, tüm dokümantasyon dev bir html sayfasındadır. Firefox'ta, control+faramayı sayfa widget'ında getirmek için (mac'larda command + f) tuşlarına basın . Firefox'un arama alanına aradığınız sembolü yazın. Bireysel olarak bakabileceğiniz 37 maç rapor eder.

Bazen de, sembol dizisi deyimseldir ve bir dilin belgelerinde yer almaz. Dışarıdan biri, örneğin bir $ in javascript'in genellikle jquery veya prototip veya başka bir dahil kitaplık anlamına geldiğini nasıl bilebilir?

Bu durumda, muhtemelen bunu açıklayacak bir yerde yığın taşmasıyla ilgili bir soru var. Ancak, bir $ sembolü için stackoverflow araması çalışmaz. Soruyu sorabilirsin, muhtemelen bir cevap alırsın. (bu durumda yaptığınız gibi).

Sanırım bir yığın aşımı özelliği talebinde bulunmalıyız? Bu genel bir web araması değildir, ancak stackoverflow, bu gibi sorunları genel web'de olmadığı şekilde yanıtlamak için benzersiz bir şekilde konumlandırılmıştır.

düzenleme: meta.stackoverflow.com'a baktıktan sonra bunun için zaten mevcut bir istek buldum: /meta/19870/we-need-to-be-able-to-search-for- noktalama-semboller

Görünüşe göre "bir soru sor" a basıp yazarsanız

What does the symbol [symbol] in [language] mean?

başlıkta, ardından imlecinizi vücuda getirin, SO önceden sorulmuş ve "arama" kullanmaktan çok daha iyi sonuçlar veren bir dizi soru önerir. Sembolle ilgili herhangi bir sorgunun cevabını muhtemelen orada bulacaksınız. Ve yapmazsanız, devam edin ve sorunuzu gönderin. Eminim, size sorunun zaten sorulduğunu söylemeye hevesli 10 kadar hevesli inek vardır ve sizi yinelenen soruların nerede olduğuna işaret eder ve yalnızca birkaç potansiyel olumsuz oy pahasına!

Stack Overflow, bu özelliği gerçekten eklemelidir. Olmaması çok saçma. Yinelenen sorular, yalnızca Stackoverflow'un bu özelliğe sahip olmadığı için kabul etmesi gereken maliyettir.


0

Şimdiye kadar bulduğum en yakın Cuil, kriterlerinize göre "make $" için tam eşleşmeleri bulmak kadar yakın oluyor. Ne yazık ki, bunlar hızlı bir şekilde zengin olma siteleri içindir. Ancak C # ve C ++ gibi terimlerle Google'dan daha iyidir.


0

Cevap elbette Google :-) Özellikle Google Code Search . Örneğin istekleriniz için sorgulara bakın: ( düzenle: bağlantılar düzeltildi)

>>> http://www.google.com/codesearch?q= >>>

$ http://www.google.com/codesearch?q=\$

# http://www.google.com/codesearch?q=\#

DÜZENLEME: Tamam, son yorumunuzdan soruya kadar, şimdi ne demek istediğini anlıyorum. Bu birçokları için faydalı olacaktır (benim için hayatımda ihtiyacım olabilecek çok az zaman). Ama bildiğim kadarıyla bunu yapmanın bir yolu yok. Forumlarda "sembol araması" için arama yaparsanız, bunun gibi birçok şikayet bulacaksınız .

Bulduğum en yakın şey, semboller aramaktan oldukça mutlu olan budur (ancak yalnızca bu nispeten küçük toplulukta, aradığınız şey bu değil): http://perlmonks.org/

Neden böyle bir programcı arama motoru yazmıyoruz ?


10
İnterneti tıpkı google kullanırken olduğu gibi, çoğunlukla dokümantasyon için aramak istiyorum. Ben değilim değil kod ararken.
static_rtti

1
Belki böyle bir arama motoru yazabiliriz. O zaman İnternet'i indekslememiz gerekir ki bu daha büyük bir problemdir. Çoğumuzun Google düzeyinde bant genişliğine sahip Google boyutlu veri merkezlerini karşılayabileceğimizi sanmıyorum ve başlamak için ihtiyacımız olan şey bu.
David Thornley

5
Elbette bant genişliğine, işlem gücüne veya hızına ihtiyacımız yok. Programcılar, web kullanıcılarının çok küçük bir kısmıdır ve böyle bir hizmet için, sıradan bir Google aramasından daha uzun süre mutlu bir şekilde bekleyebilirler. Elbette depolama bir sorun olabilir, ancak yine, yalnızca "programlama ile ilgili" sayfaları indekslemenin bizim belirlediğimizden daha akıllı bir yolunu bulursak: Küçük bir kümenin bunu oldukça kolay bir şekilde halledebileceğine inanıyorum! Şimdi, doğru algoritmayı ve doğru sıralama sistemini geliştirmek zor olabilir.
Davide

1
Bu cevap, ödül nedeniyle otomatik olarak kabul edildi mi? (
Ödüller

32
Bu hizmet artık mevcut değil. Google Code Search, "düşüş taraması" kapsamında 15 Ocak 2012'de kapatıldı .
animuson

0

İşte kullandığım şey:

www.koders.com - Birkaç açık kaynak projesini dizine ekler , bu nedenle, bir şeyin nasıl yapıldığını bilmek istersem, sadece kaynak kodunda ihtiyacım olanı bulur. Ve gerçekten iyi çalışıyor.


1
Sorum cevap vermiyor, cevap vermeden önce lütfen soru ve yorumları dikkatlice okuyunuz.
static_rtti

Aslında sorunuzu cevapladım :) <$ ve benzeri sorguları destekleyebilecek bir arama motoru istediniz. Ve size gösterdiğim tam olarak bunu yapıyor! :) Aslında ve daha fazlası, çünkü geliştirici odaklı bir arama motoru olduğundan, alacağınız tüm içerik tam olarak koddur. İhtiyacınız olan kod + onunla ilgili yorumlar. Belki de denemelisin.
Kico Lobo

Denedim, aslında daha önce çok şey biliyordum ama soruma cevap vermiyor (nedenini anlamak için açıklama yorumlarını okuyun).
static_rtti

-1

Açık kaynak arama motorları, herkesten çok daha esnek indeksleyicilere sahiptir. Başka biri sembollere izin veren bir belirteç yazmadıysa, kendi yazınızı yazmak kolaydır. Solr / Lucene, Xapian, Sphinx ve Ferret'e bakardım.

Ayrıca, sinir bozucu Google AJAX API 64 sonuç sınırı yok!


3
Kendi kendine çalıştırabileceği bir indeksleyici
istemiyor

1
Ayrıca kendi başına çalıştırabileceği bir indeksleyici de istemiyor. Alternatif çözümler hala çözümlerdir.
Justin Johnson

-3

Tamam, o halde 2c'mi takayım ve bakalım bunu temizleyebilecek miyim. Muhtemelen yapmanız gereken üç arama var:

  1. "$ <" Nedir?
  2. $ Foo veya <<< gibi değişmez dizeler nasıl aranabilir?
  3. Bir şeyin adını bilmiyorsam ve arama motorum değişmez dizeleri aramama izin vermiyorsa, onu nasıl arayabilirim?

İlk durum kolaydır, inşa edilmekte olan hedef için bir yapım sürecinin ihtiyaç duyduğu ilk ön koşulun adıdır. Örneğin http://www.gnu.org/software/make/manual/make.html#Automatic-Variables adresine bakın .

İkinci durum oldukça zor. Google, birkaç istisna dışında noktalama işaretlerinin göz ardı edildiğini söylüyor (bkz. Http://www.google.com/support/websearch/bin/answer.py?answer=134479 ). Bu, kodunuzdaki "++" ve "<<" gibi küçük atom-y şeylerinin çoğunu ortadan kaldırır. Elbette, Google'ın buna bazı akıllılar uygulaması gerekiyor, örneğin "C ++" için kendi başına bir birim olarak arama yapmaya izin veriyorlar. Yine de C ++ internetten kaybolsa belki dünya daha iyi bir yer olurdu :)

Üçüncü durum, kütüphanecilik ve felsefe arasında bir yere aittir. Wittgenstein şüphesiz "hakkında konuşamayacağımız şeyi arayamayız" gibi özlü bir şeye sahip olacaktır, ancak pragmatik olarak, unsurunuzu tanımlayabilecek alternatif terimler hakkında düşünmekten başka seçeneğiniz yoktur. Örneğin, "atom", "değişken", "operatör" ve benzeri.

Umarım yardımcı olur!

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.