超级简单问题(20分)

  • 主题发起人 主题发起人 嫩手
  • 开始时间 开始时间

嫩手

Unregistered / Unconfirmed
GUEST, unregistred user!
怎么提取出这个字符串,任意出几个字符如:
'abcdefg',怎么取出'de'
 
用MidStr函数。
function MidStr(const AText: string;
const AStart, ACount: Integer): string;
 
可能说错了,是取出一个字符之后的,比如‘a+b’,我想取出+后面的字符,怎么取?
 
midstr?在哪个单元里?我怎么找不到?编译时提示 :Undeclared Identifier midstr
 
我要的也是位置不定的,也许在第3个,也许在第10个
 
如:
abc:=midstr('a+b',3,1);
 
copy(s,pos('+'),length(s)-pos('+'))
 
要先在uses里加入StrUtils,如果位置不固定,可以先用strpos查出+的位置。
 
它的返回值是什么?我在线等你,谢谢!
 
是不是从第一个参数中查找第二个参数?
 
如果这个字符串中有多个+,我想取出最后一个+后面的字符,怎么取?
 
比如:a+b+c+d 我想取出d
 
rightstr(abc,(length(abc)-pos('+',abc)));
copy(s,pos('+'),length(s)-pos('+',s));
返回值都是字符串。
 
to Silence:
rightstr最相似,但如果有多个+怎么取出最后一个+后面的字符?
 
我有个变通的办法:用reversestring函数先将字符串倒过来,再查找第一个+。[:D]
 
这个函数不太好使,也许是我不会使,总是得不到满意的字符,不知道为什么,还有其它办法吗?
 
明天早晨我再来,还要上班,谢谢你们废心了
 
假设abc:='a+b+c+d';
要取出最后一个+右边的字符,赋值给def,则
abc:=reversestring(abc);
def:=reversestring(leftstr(abc,(pos('+',abc)-1)));
 
多人接受答案了。
 
后退
顶部