Left 部分文字取り出し
Left関数は指定した文字列の左端から指定文字数分取り出します。
Delphiでは Copy関数を使用します。
Copy関数は文字列の左端から取り出すのではなく BASIC の Mid 関数のように指定位置から指定文字数分の文字列を返します。
■ Copy の使用例 |
procedure TForm1.Button1Click(Sender: TObject); var S1, S2 : string; SW : WideString; begin S1 := 'Borland Delphi 5 Enterprise Edition'; S2 := Copy(S1,9,6); // "Delphi" S1 := 'プログラマの気炎'; S2 := Copy(S1,13,4); // "気炎" SW := 'プログラマの気炎'; S2 := Copy(SW,7,2); // "気炎" end; |
Delphi 6 からは LeftStr 関数が追加されました。これを使うと
Left 関数と同じように記述できます。LeftStr 関数で取り出しに指定するのはバイト数で、文字数ではありません。
※ uses 節に StrUtils を追加してください。
■ LeftStr の使用例 |
procedure TForm1.Button2Click(Sender: TObject); const TEXT1 = 'Delphi'; TEXT2 = 'デルファイ'; var s : string; w : WideString; begin //半角文字列の左から1バイトを取得 s := LeftStr(TEXT1, 1); ShowMessage(s); //結果 = D //全角文字列の左から2バイトを取得 s := LeftStr(TEXT2, 2); ShowMessage(s); //結果 = デ //全角文字列の左から2文字を取得 s := Copy(WideString(TEXT2), 1, 2); ShowMessage(s); //結果 = デル end; |