C#のメソッド、プロパティ一覧

【C# sharp】LastIndexOf メソッドの使い方 特定の文字や部分文字列が最後に現れる位置を探すメソッドを解説

ChatGPTのAPIを使わずに自動化することが可能です。
下記の本を読めば、ChatGPT4でも料金掛からずに自動化できます!KindleUnlimited会員であれば無料で読めます。

はじめに

C#のプログラミングにおいて、文字列の操作は非常に頻繁に行われるタスクです。その中で、特定の文字や部分文字列が最後に現れる位置を探すのが、LastIndexOfメソッドです。

この記事では、このLastIndexOfメソッドの使い方を初心者でも分かるように、解説します。

サルモリ
さぁ、今日も頑張っていこう!
C#のLinqを徹底的に学びたい方は画像をクリックしてご覧ください!
KindleUnlimited会員であれば、全ての本をご覧頂けます。 Linqを理解すれば、C#プログラミングの世界が変わる 第1版

LastIndexOfメソッドの基本

C#のstring型にはLastIndexOfというメソッドがあります。このメソッドは、指定した文字または部分文字列が最後に出現するインデックスを返します。

しかし、注意すべき点が2つあります。1つ目は、文字列は0から始まること、2つ目は、探す文字や部分文字列が存在しない場合、-1を返すことです。

ソースコード例



 出力結果
14 
サルモリ
これで、"Hello"が最後に出現する位置を見つけられたね!

LastIndexOfメソッドのオーバーロード

LastIndexOfメソッドにはいくつかのオーバーロードがあります。オーバーロードとは、同じ名前のメソッドを異なる引数で定義することを指します。

LastIndexOfメソッドでは、探す文字列だけでなく、検索開始位置や検索する文字列の長さを指定することも可能です。

第2引数として、検索開始位置に10を指定している例です。

ソースコード例



 出力結果
0 
サルモリ
10番目の位置から前方向に"Hello"を検索したら、一番初めの"Hello"が見つかったね!

大文字と小文字を区別しない検索

デフォルトでは、LastIndexOfメソッドは大文字と小文字を区別して検索を行います。しかし、大文字と小文字を区別せずに検索したい場合もあるでしょう。その場合は、StringComparisonオプションを使って、大文字と小文字を区別しない検索を行うことが可能です。

ソースコード例



 出力結果
0 
サルモリ
大文字小文字を区別せずに検索したら、小文字の"hello"も見つけることができたね!

文字列が見つからない場合の挙動

LastIndexOfメソッドを使用していると、指定した文字や部分文字列が見つからない場合もあります。

このような場合、LastIndexOfメソッドはどうなるでしょうか?

ソースコード例



 出力結果
-1 

サルモリ
"C#"という文字列は存在しないから、-1が返ってきたよ!この方法を使えば、特定の文字列が存在するかどうかも確認できるね!

他のIndex系のメソッド

LastIndexOfメソッドに関連するメソッドは下記の2つがあります。

  1. IndexOfメソッドの使い方 指定した文字列の位置を返してくれます。大文字小文字を気にせずに検索する方法なども解説
  2. IndexOfAnyメソッドの使い方 文字列内で特定の文字集合のどれかが最初に現れる位置を探すときに使用します。

まとめ

C#のLastIndexOfメソッドは、文字列内で指定した文字や部分文字列が最後に出現する位置を見つけるための便利なツールです。基本的な使用方法からオーバーロード、大文字小文字を区別しない検索など、幅広い機能を提供しています。

ただし、文字列のインデックスは0から始まり、探す文字や部分文字列が存在しない場合は-1を返すという2つの注意点を忘れないでください。

サルモリ
最後まで読んで頂き、ありがとうございました。少しでもお役にたてたなら幸いです!

-C#のメソッド、プロパティ一覧

Ads Blocker Image Powered by Code Help Pro

Ads Blocker Detected!!!

We have detected that you are using extensions to block ads. Please support us by disabling these ads blocker.

Powered By
Best Wordpress Adblock Detecting Plugin | CHP Adblock