2

我有一个这样的字符串:

"productName=\"NAME\"\n"

我想把它改成这样:

"productName=NAME"

在 Erlang 中执行此操作的最佳方法是什么?

4

4 回答 4

5

我也喜欢这一篇,通俗易懂,非常接近宁命题:

1> A="productName=\"NAME\"\n".
"productName=\"NAME\"\n"
2> lists:filter(fun ($\") -> false; ($\n) -> false; (_) -> true end,A).
"productName=NAME"
于 2013-09-20T18:50:25.070 回答
3

可能是多种方式之一:

A = "productName=\"NAME\"\n".
re:replace(A, ["[\"\n]*"], "", [global, {return, list}]).
于 2013-09-20T14:13:19.110 回答
2

(另一种)可能是多种方式之一:

S0 = "productName=\"NAME\"\n".
[Char || Char <- S0, not lists:member(Char, [$\", $\n])].
于 2013-09-20T14:49:33.467 回答
1

另一种变体,例如,如果您只想为该特定键执行此操作,但不理会所有其他键:

A = "productName=\"NAME\"\n".
case A of
    "productName=" ++ S ->
        "productName=" ++ string:strip(S, both, $");
    _ ->
        A
end.
于 2013-09-21T21:03:54.047 回答