【C#】文字列の一部を切り取る【Substring】

開発環境について

当記事は以下の開発環境となりますのでご注意ください。

・Visual Studio 2022

・.Net 6.0

・C#

文字列操作について

文字列の一部を切り取る場合はStringクラスのSubstringメソッドを使用します。

使い方は2種類あり、状況によってどちらを使うか選択していきます。

①string.Substring(startIndex:切り取りたい文字列の位置)

②string.Substring(startIndex:切り取りたい文字列の位置、length:切り取る桁数)

C#においてindex(位置)による指定を行う場合には注意が必要です。

例えば「こんにちは」という文字列だとindexは 「0:こ 1:ん 2:に 3:ち 4:は」となります。

このように数え方が1から始まるのではなく0から始まるところに注意して使います。

使い方①

それでは以下の流れでソースを組んでみようと思います。

・Stringクラスの変数

・文字列の値を代入

・「こんにちは」の「にちは」を切り取る

・出力ウィンドウに切り取った文字列を出力

// Stringクラスの変数を用意する.
string str = "こんにちは";

// 切り取った文字列の値を代入する.
str = str.Substring(2);

// 変数の内容を出力ウィンドウに出力する.
Debug.WriteLine(str);

実行結果①

プログラムを組んだ後はデバッグ実行をします。

デバッグ実行をすると出力ウィンドウにDebug.WriteLine(src)の内容が出力されます。

今回は以下のように出力されました。 

使い方②

それでは以下の流れでソースを組んでみようと思います。

・Stringクラスの変数

・文字列の値を代入

・「こんにちは」の「にちは」を切り取る

・出力ウィンドウに切り取った文字列を出力

// Stringクラスの変数を用意する.
string str = "こんにちは";

// 切り取った文字列の値を代入する.
str = str.Substring(2, 3);

// 変数の内容を出力ウィンドウに出力する.
Debug.WriteLine(str);

実行結果②

プログラムを組んだ後はデバッグ実行をします。

デバッグ実行をすると出力ウィンドウにDebug.WriteLine(src)の内容が出力されます。

今回は以下のように出力されました。 


まとめ

実際に使うときは②が多いと思いますが、どちらも使い方を覚えておくのが良いと思います。

index(位置)を間違えてしまうと想定外の結果となったり、

例外が発生するエラーとなることもあるので注意しましょう。


お問い合わせ先

当記事の内容についてや質問、

お仕事のご相談も受け付けておりますので

お問い合わせのある方はTwitterまでご連絡ください。