하위 문자열을 대체하는 함수를 작성하고 있습니다 (laguange에는 grr이 없습니다). 내 출력에 이상한 문자가 나타납니다. 나는 이유를 알 수 없다.DXL - 예상치 못한 문자 출력
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
의 출력을 얻을. 이것은 인코딩 문제 일종의 것으로 보일지 모르지만, 이것이 어떻게 일어나고 있는지, 또는 어떻게 고쳐야하는지 잘 모르겠습니다.
추가하는 것을 잊어 버렸지 만, "Jack Lewis"의 출력을 기대하고 있습니다. –
질문에 대답하지 않지만 어쩌면 다음 기능에 도움이 될 것입니다. 이미 구현 된 기능이 있습니다. https ://www.ibm.com/developerworks/community/forums/html/topic?id=77777777-0000-0000-0000-000014891187 및 http://www.capri-soft.de/blog/?p=832. – Twonky
와우, 이것들은 생명의 은인입니다. 감사합니다. –