怎样进行字符串的扩充(100分)

  • 主题发起人 主题发起人 guoyuzhang
  • 开始时间 开始时间
G

guoyuzhang

Unregistered / Unconfirmed
GUEST, unregistred user!
例如,有一个字符串'aaa',如何在它前面加上不定长的字符,变成'bbb...bbbaaa'
 
s:='aaa';
s:='bbb...bbb'+s;
 
只能同意hexi
 
如果在中间加:

比如在a的第2个字符位置加:
a:='aaaaaaa';
Insert('bbbbbbbb', a, 2)
 
不懂的说。说清楚点嘛。
 
字符串连接直接用+
字符串有个insert属性。
 
用Concat函数,但合并后的字符超过255的话,只保留前255个字符,
 
随便灌些水.....
这个问题是否能说清楚一点,简单得不敢相信是个100分的问题呀!:-)
 
用Insert过程
Insert的参数为:('源字符串','插入的新字符串',位置)
例如:
String1:='aaaaaa';
Insert(String1,'Hello, World',3);
结果String变成'aaaHello, Worldaaa'
你可以将String1赋给任意一个显示字符串的控件来检验一下

 
procedure front(var s:string;c:char;n:integer);
var
i:integer;
begin
for i := 1 to n do
s := c + s;
end;

例如: 若有 s:='aaa' 则用front(s,'b',100);后,s就为'bb..baaa'
/~~~~~~
100个'b'


mophy@188.net
 
变形后的字符串定长吗? 如果是则可以
1. 前端中 在beta的回答中加上长度控制即可( length函数)
2. dbms中用sql函数pad()(oracle中用的)
 
最快速的前端加入同一字符方法:
var s : string = 'aaa';
c : char='b';
procedure insertHead(var theStr:string; theChar:char; len:integer);
begin
setlength(s,len + length(theStr));
fillchar(theStr[1],len,theChar);
end;

begin
writeln(s);
insertHead(s,c,20);
writeln(s);
end.
 
接受答案了.
 
后退
顶部