> Erlang中文手册 > replace/4 根据正则表达式来替换数据

re:replace/4

根据正则表达式来替换数据

用法:

replace(Subject,RE,Replacement,Options) -> iodata() | charlist() | binary() | list()

用一个替换值(Replacement)去替换正则表达式(RE)匹配到的数据,参数 Subject 是要匹配替换的数据,参数 RE 是替换的正则表达式,参数 Replacement 是要替换的值,参数 Options 的用法跟 re:run/3 一样,除了 capture 之外。

Erlang 里的字符串(string)替换主要也是用该函数来实现,下面是该方法的一些例子:

全局匹配替换,并返回字符串形式的数据:

re:replace("just a test", "s\\w+", "*", [global, {return, list}]).

把字符串里的数字去掉:

re:replace("j1u223s5t a6 t7e8s9t", "[0-9]", "", [global, {return, list}]).

去除字符里的斜杠("/")和反斜杠("\")等特殊符号:

re:replace("He/llo Wo\rld", "\/", "", [global, {return, list}]).

去除字符两边里的非字符等特殊符号:

re:replace(" \nabc defg\r \t", "(^\\s+)|(\\s+$)", "", [global, {return, list}]).