2016-07-29 88 views
0

我有以下功能,循環瀏覽器的歷史(使用鉻的API),並提取任何谷歌搜索查詢。我測試在各種網站正則表達式和它的作品,但似乎並沒有在我建立的JS功能工作(不記錄任何網址):正則表達式來匹配URL不起作用

function getHistory(){ 
      var regex = '^https?:\/\/[^/]+\.google\.[a-z.]+\/((search[?#])|(webhp[?#])|([?#])).*q='; 
      chrome.history.search({text:regex, maxResults:11}, function(data) { 
       data.forEach(function(page) { 
        var url = page.url; 
        console.log(url); 
      }); 
     }); 
    } 
+0

雙反斜槓。 'var regex ='^ https?:// [^ /] + \\。google \\。[az。] + /(search [?#] | webhp [?#] | [?#])。* q =';' –

+0

這個正則表達式將域名與谷歌匹配的地方,又名'http://abgoogle.spamware.biz/search ??????? q =' –

回答

0

按照Docs 它不看起來好像chrome.history.search()需要一個正則表達式,而是需要一個文本搜索查詢,所以它並不奇怪它沒有找到任何看起來像文字正則表達式的URL。

儘管可能效率不高,但您可以將文本留空或使用「google.com」,然後對結果執行正則表達式過濾。

+0

我測試了其他正則表達式,它們只是工作精細。 – AGanz

+0

就像你在這裏使用的方式,你能提供一個工作的例子嗎? –