Методы F #, Split String и .Net - PullRequest
       11

Методы F #, Split String и .Net

38 голосов
/ 03 марта 2010

Я новичок в F #. Я использую оболочку VS2008 и F # интерактив. Я пытаюсь разбить строку, используя «System.String.Split», но затем я получаю ошибку: «Сплит не является статическим методом»

пример кода:

let Count text =
    let words = System.String.Split [' '] text
    let nWords = words.Length
    (nWords)

Как использовать методы String, такие как split в F #?

Ответы [ 2 ]

51 голосов
/ 03 марта 2010

Вы вызываете их как методы экземпляра:

let Count (text : string) =
  let words = text.Split [|' '|]
  let nWords = words.Length
  (nWords)

(Обратите внимание, что вам нужно использовать [| |], потому что Split принимает массив, а не список; или, согласно комментарию Джоэля Мюллера, поскольку Split принимает массив params, вы можете просто передать разделители в качестве отдельных аргументов (например, text.Split(' ', '\n')).)

6 голосов
/ 15 июля 2010

Функция String.split теперь определена в F # Power Pack.Вы должны добавить

#r "FSharp.PowerPack.dll";; 
#r "FSharp.PowerPack.Compatibility.dll";; 

См. Исправления для эксперта F #: http://www.expert -fsharp.com / Updates / Expert-FSharp-Errata-Jan-27-2009.pdf

Получите файл FSharp.PowerPack.dll здесь: http://fsharppowerpack.codeplex.com/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...