马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
这一讲主要是字符串函数。 字符串在计算机系统内实际上后面还跟着一个”\0”,只不过我们观察不到,计算字符串长度等运算时也不计这个”\0”。 主要字符串函数如下 函数 | | | | | | | | | | | | | 比较函数,依次比较两个字符串的每个字符的ascii的大小,直至能比较出大小,返回这轮比较的字符ascii差值,如到最后仍不能比出大小,则返回0 | | | | 比较函数,与CompareStr类似,但不考虑字符串的大小写 | | | | | | | | 字符串位置函数,返回s1在s2中首次出现的位置,注意位置从1开始计,若找不到返回0 | | | | 合并字符串过程,将s1 + s2赋值给s1,但比加法运算速度快 | | | | 截取子字符串函数,截取str的从位置m开始长度为n子字符串,如果m大于字符串长度返回’’,如果m + n大于字符串长度,则返回从m到字符串结尾的子字符串 | | | | 删除子字符串过程,将字符串str从位置m开始删除n个字符,如果m大于字符串长度则不删除,如果m + n大于字符串长度,则到字符串结尾,如果n<=0,则不删除 | | | | 插入子字符串过程,将子字符串str1插入到字符串str的第k个位置,如果k大于字符串长度则插到最后 | Str1和str为string, k为Integer | |
LowerCase等函数的参数为常数的字符串,这个我不是很理解,难道强调其不可改变,这个是形参呀。 Length的参数帮助中说可以是string,也可以是数组。 Copy的参数Str可以是string,也可以是数组,返回值也是。注意m和n不要截取到半个汉字,否则会将前一个汉字的后半截ascii码和后一个汉字的前半截ascii码重新组成一个新汉字,得到莫名其妙的结果,如Copy('汉字字符', 2, 6)返回’鹤肿址’,所以说delphi对汉字或者说对unicode的支持还是不理想的。 一个过程都没有返回值,但仍将结果通过参数“返回”给变量了。这是delphi的实参的形式起作用。 还有几个我们都很熟悉了,就不在表中列出了:IntToStr, StrToInt, FloatToStr, StrToFloat。 下面编写个小程序,输入一个字符串,得到它的长度和全大写全小写。程序很简单,只是用到了一个新的事件过程,Change。Edit的Change事件是当它的text有改变时引发的。 procedure TForm1.Edit1Change(Sender: TObject);
begin
Edit2.Text := IntToStr(Length(Edit1.Text));
Edit3.Text := UpperCase(Edit1.Text);
Edit4.Text := LowerCase(Edit1.Text);
end;
|