Сопоставление с шаблоном Haskell для строк - почему это не работает?

getMultiWordPortion :: String -> String
getMultiWordPortion (x:':':xs) = xs
getMultiWordPortion _ = ""

Ожидаемый результат от сопоставления с образцом в этом коде состоит в том, что все до получения первого двоеточия присвоено x, и все после присваивается xs, что является результатом. Если двоеточия нет, ничего не возвращается.

Что на самом деле происходит с образцом строки, которую я использую («PING: gibson.freenode.net» - это часть клиента IRC), так это то, что я получаю пустое возвращаемое значение .

Что я здесь не так делаю?

9
задан Macha 5 September 2010 в 12:59
поделиться