Как удалить символы из строки в erlang - PullRequest
1 голос
/ 13 апреля 2019

Мне нужно игнорировать / удалить все символы в строке (чтение из файла, но это не имеет значения).Как мне это сделать?Это то, что у меня есть

Words = string:to_lower(loadFile(FileToLoad)),
TokenList1 = (string:tokens(Words," \r\n,.-")),

Ответы [ 2 ]

1 голос
/ 15 апреля 2019

Вы можете использовать функцию replace / 4 модуля re, где вы заменяете все не алфавитные символы пустой строкой. Вы можете изменить второй аргумент на любой другой, что бы вы не делали, чтобы сохранить в вашей последней строке.

S = "@1a#2b*c3d%+".
re:replace(S, "[^a-zA-Z]", "", [global, {return, list}]).
% Returns "abcd"

Обратите также внимание на параметры в конце, эти параметры возвращают список в конце (может возвращать двоичный файл, если необходимо) и применяют замену глобально, а не только в первом случае.

1 голос
/ 13 апреля 2019

Я пытался использовать списочное понимание:

S = "@1a#2b*c3d%+".
WithoutSymbols = [X || X <- S, Y <- lists:seq($a,$z), X =:= Y].

WithoutSymbols становится abcd.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...