考大家一个问题:trim函数是干什么用的?(0分)

  • 主题发起人 主题发起人 一个过客
  • 开始时间 开始时间

一个过客

Unregistered / Unconfirmed
GUEST, unregistred user!
如果你回答“去掉字符串前面和后面的空格”,那你就错了。
看看delphi的帮助:
Trims leading and trailing spaces and control characters from a string.

delphi的开发者简直是混蛋!居然还自作主张的去掉了控制字符!!我用delphi这么多年,
今天才发现这个问题!第一怪自己看帮助不仔细(不过谁会仔细看trim的帮助呢),第二怪
delphi的开发者是个混蛋!

希望大家吸取我的教训。
 
control characters from a string
我也看到了。。
但是怎么用才能control呢??
 
是“控制字符”。

比如这个字符串:' '#$A'123',也就是一个空格+换行符+123,用trim的结果就变成了123,
而不是我们想象的换行符+123。 trim函数把#$A这个控制字符过滤掉了。
 
受教了。多谢。

没仔细看。
 
呵呵,,这是从别的语言带的习惯,我也一直以为trim只是去掉空格,没想到还去掉了控制字符,
呵呵,有收获。。
 
这关Delphi开发都什么事,这是你自己没有注意看而已!
 
在我没出错前发现这个问题真是感激
这个问题可能要我调试半天
 
我感激不尽。。。
我不知道以前,以为只去$20
 
这个我早知道了,小于或者等于 $20(空格) 的字符都给删掉了,包括回车换行tab、esc的等等
 
这个很正常,我曾看过Trim的源代码,觉得这更实用
 
是你自己没看仔细,这能怪谁?哪种语言都是这样的了,VB,PB都是这样的。
 
>>一个过客
我就知道你不会问这种简单的问题!
哈哈,学到了!
 
以前真的没注意
 
一个过客你真多事,自己知道就行了,嚷嚷什么,你看有些人都不高兴了
 
谢谢,以前真没注意倒
 
哈哈!这个函数真是太理想了——把所有ASCII小于等于空格的都过虑了——正如我所愿! :)

你可以试一试:

var
i:Integer;
begin
for i:=0 to 32 do
Memo1.Lines.Add(Trim(Char(i)+'a'+Char(i)+'abc'#10' '));
end;

哈哈!
 
trim函数应该改名成TrimCtrlChar
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
D
回复
0
查看
1K
DelphiTeacher的专栏
D
后退
顶部