Unescape在Delphi中使用转义序列的字符串

时间:2014-09-06 12:03:02

标签: string delphi escaping delphi-5

我使用Delphi 5并从http连接中获得这样的字符串:

str :='content=bell=7'#$8'size=20'#$8'other1'#$D#$A#$8'other2'

此字符串包含一些带有转义字符的序列,我想要忽略这些字符。如果我使用trim函数,则转义序列仍在内部。也许这是因为'#$ 8'没有可见的标志?

如何单独替换“#& 8”。例如使用'&',以便我得到字符串:

str1 :='content=bell=7&size=20&other1'#$D#$A'&other2'

在此之后我可以使用trim去除其他序列。

str2 :='content=bell=7&size=20&other1#13#10&other2'

1 个答案:

答案 0 :(得分:4)

那些是Delphi字符序列。 编译器在处理源文件时解释它们。它将#$8转换为字符串中的退格符。如果您想用其他内容替换该字符,可以调用StringReplace。 (如果那是你真正的代码,那么你可以跳过额外的函数调用,直接在你的代码中使用字符串文字中的所需字符。)

str2 := StringReplace(str1, #8, '&', [rfReplaceAll]);

Trim从字符串的开头和结尾删除空格,但是你的字符不在两端。

相关问题