我有一个字符串 source
和一个字符串 toBeRemoved
。
我想从 source
中删除 toBeRemoved
中存在的所有字符。
使用 D 编程语言执行此操作的最佳方法是什么?
示例:
string source = "abcd";
string toBeRemoved = "bd";
string result = ...; // "ac"
最佳答案
如果您提前知道要删除的字符,则可以使用 any
因为它会更快一点,因为它可以在编译时构建专门的开关表:
source.filter!(c => !c.any('b', 'd'))
否则,例如canFind
帮助:
source.filter(c => !toBeRemoved.canFind(c))
请注意,filter
是惰性的(并且没有分配)。如果您确实需要在末尾添加一个字符串,请使用例如.to!string
.
关于string - 从字符串中删除给定字符(D语言),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54467991/