有一个字符串是这样的
-B0208885B0252DDDD;
我想知道第二个B在这个字符串在的位置.谢谢
-B0208885B0252DDDD;
我想知道第二个B在这个字符串在的位置.谢谢
解决方案 »
- 如何用delphi 制作 一个制作电子书的工具?给个思路.各位讨论一下,谢谢.
- 如何让窗口保持激活状态
- VISTA这个函数(strtodate)为什么会报错?
- 查询分析器里面没有问题,在ADOQuery.sql.add()种为什么就出错呢?
- imagelist中的图像来源
- 关于dbgrideh中列数据的显示值和实际值的问题
- 制作透明ActiveX控件!
- 如何将treeview1 中的每个节点 复制到 另一棵空树中 treeView2 最好用递归
- winsock的问题,高手请进,必给分
- 各位大虾,小弟初来,不知这里有哪些高手,能告诉我么?(不好意思,只能给这么多分了)
- 关于遍历指定目录下文件的函数问题
- 动态连接数据库问题
FOR I:=LENGTH(S) DOWNTO 1 DO
IF FINDCHAR=S[I] THEN BEGIN
BREAK;//这里的I值就是最后一次出现的位置
END;
function RPos(ASubStr: string; S: string): integer;
var
i,j: integer;
begin
result := -1; if (length(ASubStr)>Length(S)) or (Length(S)=0) or (length(ASubStr)=0) then
exit; j := length(S)-length(ASubStr)+1;
for i := j downto 1 do
begin
if copy(s,i,length(ASubStr))=ASubStr then
begin
result := i;
exit;
end;
end;end;
uses StrUtils;{$R *.dfm}procedure TForm1.Button1Click(Sender: TObject);
var
s: string;
i, n: Integer;
begin
s := '-B0208885B0252DDDD';
i := 0;
n := 0;
repeat
i := PosEx('B', s, i + 1);
if i > 0 then
n := i;
until i < 1;
ShowMessage(IntToStr(n));
end;
S : string = 'How do you do';
begin
ShowMessage(IntToStr(Pos('o',ReverseString(S))));
end;
S : string = 'How do you do';
begin
ShowMessage(IntToStr(Length(S)-Pos('a',ReverseString(S))+1));
end;我楼上LastDelimiter就是很好的了。