Вы можете определить эту функцию самостоятельно,
isLetter :: Char -> Bool
isLetter 'A' = True
isLetter 'B' = True
...
isLetter 'Z' = True
Но как насчет строчных букв?А как насчет иностранных букв, таких как 'ß'
, 'ü'
, 'Ф'
, 'Й'
или 'Æ'
и их вариантов в верхнем / нижнем регистре?Поскольку Unicode настолько сложен, для любого использования на производственном уровне вы должны зависеть от уже созданных библиотечных функций.Если вы не знаете, как они называются, зайдите в Hoogle и поищите "Char -> Bool
" , и вам часто будут указывать на библиотеку, которая содержит именно то, что вы хотите.: -)
Например, документация для Data.Char.isAlpha
гласит:
Выбирает буквенные символы Юникода (строчные, прописные и заглавные буквы, плюс буквыбез учета сценариев и модификаторов писем). Эта функция эквивалентна Data.Char.isLetter
.
Бьюсь об заклад, вы не думали о букв заглавных букв , букв сценариев без регистра и букв-модификаторов !(Я не знал.)
Я даже не знал, букв-модификаторов существует.По-видимому, 'ˀ'
(гортанная остановка) - это письмо, используемое Сквошами из юго-западной части Британской Колумбии, Канада.Есть канадские дорожные знаки, которые не учитывают твою функцию!
Ты собираешься быть тем парнем, который скажет Ḇøᵇ, что он не может сесть в самолет ?!: Đ