お世話になります。現在文字列操作で文字列中の改行コードの位置を
取得したく、下記のコードでテストを行っています。
現在、mposには10という値が返るのですが、これを5文字目として
取得する方法を知りたいのです。
改行コードが出るまでの文字列を取得して1文字ずつ1バイト文字か
2バイト文字かを判断するしかないのでしょうか?
よろしくお願いします。
procedure TForm1.Button2Click(Sender: TObject);
var
test : WideString;
mpos : integer;
begin
test := 'あいうえ' + #13#10 + 'かきくけ';
mpos := ansipos(#13#10,test);
end;
> 現在、mposには10という値が返るのですが、これを5文字目として
そうですか? 試してみたら 9 でしたが?
WideString を AnsiPos で検索するのは変です。
procedure TForm1.Button1Click(Sender: TObject);
var
test : WideString;
mpos : integer;
begin
test := 'あいうえ' + #13#10 + 'かきくけ';
mpos := Pos(#13#10,test);
Label1.Caption := IntToStr(mpos);
end;
これなら 5 になります。
ツイート | ![]() |