fssnippets / fssnip-website

Source code for the F# Snippets web site
http://fssnip.net
103 stars 36 forks source link

site not accepting the following snippet (which runs fine in fsi) #90

Open fwaris opened 6 years ago

fwaris commented 6 years ago
open System.IO
open System

let tokenize (delims:char seq) str  =
    let delims = delims |> Seq.map int |> set
    seq {
      use strr = new StringReader(str)
      let rec tokens (acc,s:StringReader) = 
        seq {
        match s.Peek() with
        | -1 -> ()
        | d when delims.Contains d -> 
          let _ = s.Read() 
          if List.length acc > 0 then 
            let str = new String(List.rev acc |> List.toArray)
            yield str
            yield! tokens([],s)
          else 
            yield! tokens ([],s)
        | c -> 
            let _ = s.Read()
            yield! tokens (char c::acc,s)
        }
      yield! tokens ([],strr)
    }

(*
let str = "ab c 12 d, (n)"
let delims = [|' '; '('; ')'; ',' |] 
tokenize delims str |> Seq.iter (printfn "%A")
*)
tpetricek commented 6 years ago
fssnip

Works fine for me...