【VB.Net】Substringメソッドを使用した文字列内情報の抽出

どうも!リョクちゃです。

今回も与えられた文字列内の任意情報を抽出する方法を紹介していきます。

これまでにMid関数やLeft関数、Right関数を使用した文字列内情報の抽出の方法や

考え方を紹介し、各関数の使い方を例を交えて解説していきました。

今回はStringクラスで提供されているSubstringメソッドを使用して

文字列内の任意情報を抽出していきます。

ちなみに過去の文字列内情報に関する記事はこちら

入力値として受け取られる文字列には複数の情報が含まれている場合があります。この場合、受け取った文字列から各種情報を抽出するためにVB.NetにはMid関数が用意されていません。今回は、Mid関数の使い方から抽出の考え方を紹介していきます。
前回はMid関数を使って文字列内の情報を抽出する方法を紹介しました。今回はLeft関数とRight関数を駆使して文字列内の情報を抽出する方法を例を交えて紹介しています。



Substring関数

この関数は、以下の記述で使用することができます。

文字列.Substring(抽出開始位置、抽出する文字列の長さ)

イメージとしては以下のようになります。

コードで書くと、

準備編:フォームの作成

フォームについては、前回作成したフォームを再利用します。

スポンサーリンク




実行環境

筆者の実行環境は、

  • VisualStudio2019
  • Windows 10 64bit
  • .Net Framework 4.5.1

になります。

※ Windows7 8 8.1でも動作はできますが、画面デザインの表示が変わるかもしれません。

アプリケーションの目的

適当な入力値を入力し、ボタンを押すことでそれぞれ指定の位置から情報を抽出し、

それぞれ抽出した情報を表示することを目的とします。

ただし、Substringメソッドを使用して行えるコードとする

プログラム編

それではプログラムを作成していきます。

まずは、フォームデザイン上でボタンコントロールをダブルクリックし、

コードビューにボタンイベントを作成します。

入力値ボックスに入力がされていれば処理をするようにします。

ここからは抽出するための準備をしていきます。

考え方としては、前回の記事と同じになりますので、コードのみを変えていきます

それぞれ、所在地コードを抽出する場合は、

開始位置を0番目として、文字列の長さにPlaceCodeの長さを引数として渡しています。

電話番号コードを抽出する場合は、

所在地コードの長さを開始位置として、TeleCodeの長さを引数として渡しています。

そうすることで開始位置が3番目から、10の長さを抽出し結果を返します。

氏名コードを抽出する場合は、

所在地コードと電話番号コードの長さを足しわせた位置を開始位置として、

NameCodeの長さを引数として渡しています。

実行編

作成したコードを実行していきます。

ボタンを押すと、



まとめ

Substringメソッドを使用した文字列内の任意情報を抽出する

方法について考え方や使い方を解説しました。

抽出する文字列.Substring(開始位置,抽出する文字列の長さ)

を覚えておけばすぐに使用することができます。

文字列内の情報を抽出する方法としては様々な方法があります。

用途に応じて、自身が使いやすい方法で試していただければなと思います。

最後までご覧いただきありがとうございます。

・こちらの書籍を参考にVB.Net勉強しています。

スポンサーリンク