Sha256: 825fcbd0a1b6547f053c8587ee7c955fab68d0c4ec888094011458741a537d1e

Contents?: true

Size: 621 Bytes

Versions: 262

Compression:

Stored size: 621 Bytes

Contents

module BracketPush

open System

let matched (input: string) =
    let brackets = "[]{}()" |> Set.ofSeq
    let filtered = input.ToCharArray() |> Array.filter brackets.Contains |> String
    let replaceMatchingBrackets (str: string) = str.Replace("[]", "").Replace("{}", "").Replace("()", "")
    
    let rec loop (remaining: string) =
        match remaining.Length with
        | 0 -> true
        | _  -> 
            let updated = replaceMatchingBrackets remaining
            match updated.Length = remaining.Length with
            | true -> false
            | false -> loop updated
        
    loop filtered

Version data entries

262 entries across 262 versions & 1 rubygems

Version Path
trackler-1.0.0.1 tracks/fsharp/exercises/bracket-push/Example.fs
trackler-1.0.0 tracks/fsharp/exercises/bracket-push/Example.fs