我在删除问号时遇到问题。我不希望它们出现在我的SQL数据库中。
但是我的代码无法正常工作,而且我也不知道问题出在哪里。
function RemoveQMark(sWork: String): String;
begin
Delete(sWork, 2, 4);
Delete(sWork, Length, 2);
Result := sWork;
end;
我要删除第一个和最后一个位置的
?
。 最佳答案
无需在传入的字符串上使用Delete
。只需使用Delphi Copy
函数将除了第一个和最后一个字符外的所有字符直接复制到结果中:
function RemoveQMark(const sWork: String): String;
begin
Result := Copy(sWork, 2, Length(sWork) - 2);
end;
使用
const
on string arguments可使编译器生成更有效的代码。 (没有const
时,字符串引用计数在函数开始时增加,在结束时减少(在try ... finally块内))。关于delphi - 删除问号,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19588960/