1<?php 2 3namespace dokuwiki\plugin\statistics; 4 5/** 6 * Defines regular expressions for the most common search engines 7 */ 8class SearchEngines 9{ 10 11 12 protected $SEARCHENGINEINFO = [ 13 'google' => ['Google', 'http://www.google.com'], 14 'yahoo' => ['Yahoo!', 'http://www.yahoo.com'], 15 'yandex' => ['Яндекс (Yandex)', 'http://www.yandex.ru'], 16 'naver' => ['네이버 (Naver)', 'http://www.naver.com'], 17 'baidu' => ['百度 (Baidu)', 'http://www.baidu.com'], 18 'ask' => ['Ask', 'http://www.ask.com'], 19 'babylon' => ['Babylon', 'http://search.babylon.com'], 20 'aol' => ['AOL Search', 'http://search.aol.com'], 21 'duckduckgo' => ['DuckDuckGo', 'http://duckduckgo.com'], 22 'bing' => ['Bing', 'http://www.bing.com'] 23 ]; 24 25 protected $SEARCHENGINES = ['^(\w+\.)*google(\.co)?\.([a-z]{2,5})$' => ['google', 'q'], 26 '^(\w+\.)*bing(\.co)?\.([a-z]{2,5})$' => ['bing', 'q'], 27 '^(\w+\.)*yandex(\.co)?\.([a-z]{2,5})$' => ['yandex', 'query'], 28 '^(\w+\.)*yahoo\.com$' => ['yahoo', 'p'], 29 '^search\.naver\.com$' => ['naver', 'query'], 30 '^(\w+\.)*baidu\.com$' => ['baidu', 'wd', 'word', 'kw'], 31 '^search\.avg\.com$' => ['google', 'q'], 32 '^(\w+\.)*ask\.com$' => ['ask', 'ask', 'q', 'searchfor'], 33 '^(\w+\.)*search-results\.com$' => ['ask', 'ask', 'q', 'searchfor'], 34 '^search\.babylon\.com$' => ['babylon', 'q'], 35 '^(\w+\.)*(aol)?((search|recherches?|images|suche|alicesuche)\.)aol(\.co)?\.([a-z]{2,5})$' => ['aol', 'query', 'q'], 36 '^duckduckgo\.com$' => ['duckduckgo', 'q']]; 37 38 39 public function __construct() 40 { 41 // add the internal DokuWiki search engine 42 'dokuwiki' => ['DokuWiki Internal Search', wl()], 43 44 45 } 46 47} 48