2012-12-21 8 views
-1

我一直在閱讀Android文檔和谷歌搜索語音識別尋找的東西,跟蹤一個特定的單詞已被說過多少次或實例。我知道它會返回一個可能匹配的數組列表,以及它相信它的匹配的自信程度。我想知道的是,有什麼辦法可以拉動它相信「貓」(例如)在其「錄製」過程中所說的多少次? IE認爲「貓」被說3次,所以它返回3個「貓」實例,併爲每個實例做出反應。有點像說Beetlejuice 3次,他出現了。有沒有這樣做的直接方式?有沒有方法可以跟蹤語音識別中特定單詞的多少個實例?

回答

2

假設你作爲一個ArrayList的

ArrayList<String> s = data.getStringArrayListExtra(RecognizerIntent.EXTRA_RESULTS); 
     String[] split = s.get(0).split(" "); 
     int count = 0; 
     for (String t : split) { 
      if (t.contains(split[0])) { 
       count++; 
      } 
     } 
     //count now equals number of repeats of a word within a phrase 
+0

酷,只需要指定它尋找之前獲得計數,然後,正確的字返回的數據? – user1409172

+0

不會,因爲它會記錄第一個單詞,然後計算第一個單詞的發生次數。要使用特定的單詞,請將您的單詞替換爲「split [0]」。你也可以讓它計算許多單詞,同時購買更多的if/else塊與許多不同的單詞和更多的計數器。 – AndroidPenguin

+0

正在尋找那個,這將解釋我的System.out打印計數哈哈。但是,在用特定字替換「split [0]」之後,它不再提供system.out來進行計數。我已經試過將字符串作爲「貓」傳遞,或者作爲來自String cat =(「cat」)的貓傳遞。哪一種是合適的方式? – user1409172

相關問題