Elm:
Удаление символов, соответствующих шаблону
Как:
Elm изначально не поддерживает регулярные выражения, но вы можете симулировать удаление символов. Вот пример использования String.filter
для удаления цифр из строки.
import Browser
import Html exposing (text)
removeDigits : String -> String
removeDigits = String.filter (\char -> not (char >= '0' && char <= '9'))
main =
text (removeDigits "Elm 0.19.1 - это супер 123 круто!")
-- Вывод: "Elm . - это супер круто!"
Погружение
В Elm нет регулярных выражений как части основного языка, в отличие от многих других языков. Такой выбор дизайна соответствует целям Elm в плане простоты и безопасности. Регулярные выражения могут быть склонны к ошибкам и трудны для отладки, но Elm выступает за более простые операции со строками, которые покрывают многие распространённые случаи использования.
В тех случаях, когда действительно нужны регулярные выражения, реализация зависит от взаимодействия с JavaScript через порты. Однако Elm поощряет поиск решений внутри языка в первую очередь. Модуль String
предоставляет функции вроде filter
, replace
и split
, которые покрывают широкий спектр манипуляций с текстом на основе шаблонов без введения сложности регулярных выражений.
См. также
- Документация по строкам Elm
- Практический Elm для занятого разработчика - книга, включающая утилиты для манипуляций с текстом.