DXL - 意外的字符输出

DXL - Unexpected character output

我正在编写一个函数来替换子字符串(什么 laguange 没有这个,grr),我的输出中出现了一些奇怪的字符。我不知道为什么。

string replaceSubstring(string input, string targetSubstring, string substitute, bool matchCase)
{
    string result = input
    Buffer b = create
    b = input
    int targetStartPos
    int targetLength

    while (findPlainText(result, targetSubstring, targetStartPos, targetLength, matchCase))
    {
        string prefixStr = b[0:targetStartPos - 1]
        string suffixStr = b[targetStartPos + targetLength:]

        b = prefixStr substitute suffixStr
        result = tempStringOf(b)
    }

    delete b
    return result
}

当 运行 print replaceSubstring("Jake Lewis", "ake", "ack", false) 时,我得到 �*��*�is 的输出。这似乎是某种编码问题,但我不清楚这是怎么发生的,也不清楚如何解决。

尝试使用 stringOf() 而不是 tempStringOf()。你的处理没问题,但是删除b.

后结果就失效了