.NET TIPS 文字列中の指定された位置の文字列を取得するには?デジタルアドバンテージ2004/01/23 |
|
|
ある文字列から、指定された位置にある文字列を取得する場合には、Stringクラス(System名前空間)のSubstringメソッドを使用する。.NETでは、文字列は暗黙的にStringクラスのインスタンスであるため、文字列オブジェクトに対してSubstringメソッドを呼び出せばよい。
Substringメソッドには2つのバージョンがあり、1つあるいは2つのパラメータを指定する。2つのパラメータを指定するバージョンでは、取得する文字列の開始位置と、取得する文字列の長さをパラメータで指定する。取得する文字列の開始位置のみを指定するバージョンでは、指定した位置から末尾までの文字列を取得できる。
次のC#のサンプル・プログラムは、それぞれのバージョンのSubstringメソッドを利用した例である。
|
|
Substringメソッドを使用したC#のサンプル・プログラム(substr.cs) | |
VB.NETのLeft、Mid、Right関数
Visual Basic .NET(以下VB.NET)では、Substringメソッドと似た働きをする3つの関数が用意されている。
文字列の左端から指定した長さの文字列を取得するLeft関数、指定した位置から指定した長さの文字列を取得するMid関数、文字列の右端から指定した長さの文字列を取得するRight関数である(これらの関数はすべてMicrosoft.VisualBasic名前空間のStringsモジュールに含まれている)。
次のVB.NETのサンプル・プログラムは、それぞれの関数の使用例と、それをSubstringメソッドで記述した場合の例を示している。
|
|
3つの文字列操作関数とSubstringメソッドを使用したVB.NETのサンプル・プログラム(substr.vb) | |
ここに示したように、いずれの関数もSubstringメソッドで置き換え可能である。
Substringメソッドでは開始位置のインデックス番号が0から始まるのに対して、Mid関数では1から始まる点には注意が必要である。Mid関数がこのような仕様になっているのは、Visual Basic 6.0以前のバージョンのMid関数がそうだったためである。
また、.NETでは文字列はすべてUnicodeである。このため、文字列を明示的にUnicodeとして処理するために提供されていたRightB関数、MidB関数、LeftB関数は、VB.NETではもはやサポートされていない。
カテゴリ:クラス・ライブラリ 処理対象:文字列 使用ライブラリ:Stringクラス(System名前空間) 使用ライブラリ:Left関数(Microsoft.VisualBasic名前空間) 使用ライブラリ:Mid関数(Microsoft.VisualBasic名前空間) 使用ライブラリ:Right関数(Microsoft.VisualBasic名前空間) |
|
「.NET TIPS」 |
- 第2回 簡潔なコーディングのために (2017/7/26)
ラムダ式で記述できるメンバの増加、throw式、out変数、タプルなど、C# 7には以前よりもコードを簡潔に記述できるような機能が導入されている - 第1回 Visual Studio Codeデバッグの基礎知識 (2017/7/21)
Node.jsプログラムをデバッグしながら、Visual Studio Codeに統合されているデバッグ機能の基本の「キ」をマスターしよう - 第1回 明瞭なコーディングのために (2017/7/19)
C# 7で追加された新機能の中から、「数値リテラル構文の改善」と「ローカル関数」を紹介する。これらは分かりやすいコードを記述するのに使える - Presentation Translator (2017/7/18)
Presentation TranslatorはPowerPoint用のアドイン。プレゼンテーション時の字幕の付加や、多言語での質疑応答、スライドの翻訳を行える
|
|