mirror of
https://github.com/correl/elm.git
synced 2024-11-16 03:00:08 +00:00
18 lines
376 B
Text
18 lines
376 B
Text
|
module Anagram (..) where
|
||
|
|
||
|
import String exposing (toLower, toList)
|
||
|
|
||
|
|
||
|
detect : String -> List String -> List String
|
||
|
detect word candidates =
|
||
|
let
|
||
|
original = toLower word
|
||
|
ref = normalize word
|
||
|
in
|
||
|
List.filter (\w -> normalize w == ref && toLower w /= original) candidates
|
||
|
|
||
|
|
||
|
normalize : String -> List Char
|
||
|
normalize word =
|
||
|
word |> toLower |> toList |> List.sort
|