Does F # have its own string manipulation libraries?
As I try to learn F #, I found myself using existing System.string methods?
Should I do this?
Code:
open System type PhoneNumber = { CountryCode:int Number:string } // b. Create a function formatPhone that accepts a PhoneNumber record and formats it to look like something like this: "+44 1234 456789" let formatPhone phoneNumber = let getLeadingCharacters (length:int) (text:string) = text.Substring(0, length) let getLastCharacters (length:int) (text:string) = text.Substring(text.Length - length, length) printf "+%i %s %s" phoneNumber.CountryCode (phoneNumber.Number |> getLeadingCharacters 4) (phoneNumber.Number |> getLastCharacters 6) formatPhone { CountryCode=44; Number="123456789" };;
UPDATE
Updated feature:
let formatPhone phoneNumber = let getLeadingCharacters (length:int) (text:string) = text.Substring(0, length) let getLastCharacters (length:int) (text:string) = text.Substring(text.Length - length, length) printf "+%i %s %s" phoneNumber.CountryCode (phoneNumber.Number |> getLeadingCharacters 4) (phoneNumber.Number |> getLastCharacters 6) formatPhone { CountryCode=44; Number="123456789" };;
in
let formatPhone phoneNumber = printf "+%i %s %s" phoneNumber.CountryCode phoneNumber.Number.[0..3] phoneNumber.Number.[4..8] formatPhone { CountryCode=44; Number="123456789" };;
source share