転職を繰り返したサラリーマンの多趣味ブログ

30才未経験でSEに転職した人の多趣味ブログ

C#を勉強する13_文字列の検索と抽出

前回は、文字列の判定だった。そのため戻り値はboolだったが、今度は文字列の抽出を行う。

部分文字列を検索し、その位置を求める

var target = "1234ABC567";
// 0から始まるため「4」を返す
var index = target.IndexOf("ABC");

文字列の一部を取り出す

var target = "1234ABC567";
var index = target.IndexOf("ABC");
// 指定した開始位置から最後まで取り出す
var searchStr = target.Substring(index); // ABC567が抽出される

Substringは、取り出す長さも指定できる。
ここで注意が必要なのが、第2引数に渡すのは第1引数から数えば長さということ。以下であれば、Aからスタートした長さなので長さを3にすると「ABC」と出力されるが、長さを6を指定すると「ABC567」が出力される。

var target = "1234ABC567";
var index = target.IndexOf("ABC");
// ABCを抽出する
var searchStr = target.Substring(index, 3);