pos(a,b)函数用法如下:取出子串a,在父串b中第一次出现的位置。
例如:
pos(‘b’,‘abcd’);
返回结果是2;
在delphi中使用汇编异常的简单,只用使用关键字asm ....end来引导就行了。 得到一个字符在字符串中的位置有很多方法,最简单的就是使用delphi自己的Pos函数 。
另外一个方法就是使用 循环查找字符串数组的方法,二分法等,这几种是比较常规的方法,其中建议最好不使用Pos函数。 因为,虽然使用该函数写的代码是很简单,只用一句话:
CharIndex := Pos(MyChar,str)
就能够完成,但是其实他的效率是最低的,因为delphi在使用它之前,先要开辟一个数组空间。
扩展资料
delphi中pos和Ansipos函数的区别:
POS和ANSIPOS的主要区别在于,POS参数多用于是一个字符,而ANSIPOS多用于是多个字符:
例如:i:=pos('a','sssssas');
i:=ansipos('abc','sdabcss');
AnsiPos是以Ansi字符做为Pos单位,例如AnsiPos('|','王韡|')得到的值是5。Pos是以字节作为Pos单位,例如Pos('|','王韡|')得到的值是4,因“‘韡”是由两个字节组成,而其低位为“|”所以Pos后的结果为4。
另外AnsiPos和Pos都可以Pos多字符目标,例如:
AnsiPos('Abs','123Abs78') = 4
AnsiPos('Abs','123A5678') = 0
Pos('Abs','123Abs78') = 4
Pos('Abs','123A5678') = 0
例如
pos('b','abcd');
返回结果是2
取出子串在父串中第一次出现的位置
例如
pos('b','abcd');
返回结果是2