网上搜索是大家上网最常用的一个工具,我很喜欢用谷歌的搜索查询英文的资料。上个礼拜我看了一个苹果的播客MacMost Now 140,谷歌搜索的小技巧。其中有些技巧非常有用,我过去都不知道。看完之后,在网上进一步搜索,又发现了许多其它的小技巧。这里我将这些结果整理出来,供我自己将来用参考,也许对许多博友也会有用? 基本搜索
先从大家知道的最基本搜索谈起,大多数人找到搜索网页,键入单词或片句进行搜索。谷歌的搜索引擎是怎么进行搜索的呢?搜索的结果的根据是什么呢?简单来说,谷歌的搜索是在它的巨大数据库中,找出那些含有你所搜索信息的网页,即这些网页都有你所查询的单词或句子。这种搜索是计算机在快速搜索,谷歌搜索的现在增加了新的智能功能,如果它找不到你所搜索的东西,它会根据模糊比较匹配的算法,找出相似的单词或片句,并告诉你搜索的结果是根据什么。
- 每一个单词都有用,搜索引擎用所有的单词作为搜索结果的条件
- 搜索是不分大小写的,[new york times]与[New York Times]等同
- 一般来说标点符号是忽略的,忽略的还有 @#$%^&*()=+[] 等
指定片句、选择性和排除法等搜索
双引号和+
有些时候,如果希望搜索按照指定得片句进行,则需要用引号扩起来,如["Alenxander Bell"]。但要注意,这样的网页结果将不会有Alenxander G. Bell。
用+也有同样的功能,但+之前必须有空格,而+与之后单词之间没有空格。谷歌搜索自动考虑采用同义词,但如果你要求搜索按照指定的词,可以用+指定,比如[child care]和[childcare]是同义词,但如果你需要搜索含有两单词的网页,采用[+child +care]。[+childcare]与["childcare"]相同。
OR和-
搜索对象含有多个单词时,你可能希望搜索结果的网页是都含有这些单词,或者有部分单词,或者排除一些词。如果你在搜索有特殊的要求,可以使用几个特殊的逻辑符号:AND, OR和-。AND是包含所有的字,这是自动隐含,因此可以不需要用这个。OR 两边需要加空格,而且必须大写,这表示或者,即或者两词之一出现。-符号用于排除特定单词,其必须前面加空格,后面紧跟所要排除的单字。
用*作为中间的任意内容
*是一个特殊的字符,可以用来指任意内容。这是一个鲜为人知但十分有用的功能。如果你在搜索中使用*,可用它来告诉谷歌*指任何内容,谷歌搜索将尽可能找到最好的匹配。比如说搜索[Obama voted * on the * bill],你将得到奥巴马对各种提案的各种投票结果。*只能用于整个词而不能用于部分的词,如[shang*] 搜索的结果不是所有网友含有以shang开头的词,而是含有shang单词的网页。
一些例外
并不是上面所说的字符都只有其特定的功能,谷歌搜索能够作出智能推理判断。比如说[123 +321]的结果是一个计算的结果:
而且谷歌还支持带公式各种复杂的计算:
小测验:猜猜这个搜索会是什么结果["whatever" -"whatever"] ?
关键字特定搜索
谷歌还有些使用关键字来进行搜索,比如许多人知道的[site:microsoft.com design pattern]的搜索结果是仅列出所有网站是microsoft.com的结果。这种结果可以用于限制搜索的范围。再比如看看CNN有关中国内容:[china site:cnn.com china]。这里[site:xxx]可以在最前面或最后面,但site:和之后的网站之间没有空格。
site:在这里是关键词,谷歌搜索引擎自动发现递交查询中的这个关键词。site:紧接之后(没有空格)是特定网站,网站可以是全名、部分名或类别名,比如site:.gov, site:.iq.
我认为这个道理实际上十分简单,你递交查询的内容称为一个查询(query),这个查询是交给计算机进行的。搜索引擎首先自动先分析query,如果发现有关键词,则试着将这个query进行分解。比如[site:xxx yyyy]可以理解为网站限制,网站名xxx,搜索内容yyyy。如果query满足要求格式,搜索引擎将自动启动特定方式得到查询结果。我个人猜想,这种关键词的搜索方式最大的好处是速度快,因为谷歌的内部可以根据关键词排序网页内容和现成的数据库程序来进行查询。
知道这个原理之后(这是我自己猜测的,但大部分都对),我试着采用一些常用的词作为关键词进行搜索,其结果都十分惊人地达到我所预料的结果,比如下面是我试过的查询:
[definition: program] | 查询字典有关program的定义 | [weather: Calgary] | 查询Calgary城市气候 | [map: New York City] | 查询地方地图 | [shop: Edomonton] | 查询附近商店 | [car: 武汉] | 查询附近卖车店 | [travel: 西安] | 查询旅游地 | [place: 大庆] | 查询有关大庆地区和地图 | [people: 胡锦涛] | 查询人名胡锦涛 |
需要更多!
我发现这个公式之后,我觉得谷歌应该可以很容易动态增加其它搜索功能。我试了试其它的单词,但都不工作:
[translate: hello] [translateSpanish: halo] [translateFromEnglishToChinese: house] ... | 上面这些例子都是我希望谷歌搜索能提供即时翻译的功能。我接着在网上发现谷歌有关搜索的支持小组社区(GSA, Google Search Applicance/Google Mini Group),我登陆之后,提出我的请求,希望他们能考虑提供支持。
网络搜索现在成为人们生活和工作中必用的一个工具,谷歌现在作为世界上最大的搜索服务网站之一,每天处理大量的查询要求,附带着这些查询要求,还有许多如网络区域来源、位置、时间和用户(如用户已登陆邮件帐号)等信息。这些信息资料都具有研究分析的价值,谷歌可以根据这些探索出更好的搜索算法、模式和服务。这种看似简单的搜索实际上有不少学问和技巧,将来更方便和人性化搜索将会给我们带来更满意的结果。 |