0
我正在使用f#查找給定字符串或文本中的短語以及每個短語的頻率。查找字符串中的短語和每個短語的頻率
該短語將2個或更多的單詞。
我知道如何在其他語言中使用它,但我對F Sharp的匿名函數很感興趣,目前我正在學習和發現它。
這是一個非常複雜和有用的想法,因爲短語包含兩個或更多單詞。
我有什麼至今:
let containsPhrase (phrase:string) (text:string) =
let rec contains index =
if index <= text.Length - phrase.Length then compare index
else false
and compare index =
if String.Compare(text, index, phrase, 0, phrase.Length) <> 0
then nextWord index
else true
and nextWord index =
let index = text.IndexOf(' ', index)
if index >= 0 then
contains (index+1)
else
false
contains 0
let Phrases = ["Good morning";"Take care";"black Friday"]
for phrase in Phrases do
printfn "[%A] was found %b" phrase (containsPhrase (phrase.ToLower()) text)
我能找到一個解決方案,對這個問題的第一部分,但我覺得很多嘗試後輸給計算每個詞組是多少字符串中使用。
上面的代碼可以檢查任何給定的短語是否在字符串中。
任何人都可以請幫我添加一個計數器的每個短語的頻率?
非常感謝。我無法投票,因爲我需要更多的聲譽。無論如何,你的代碼是完美的,謝謝 –