概要
Substringメソッドは、文字列から指定した文字を取得することができます。
例題「村上春樹の代表作品はノルウェイの森です。」を使って、作品名の「ノルウェイの森」の取得方法を紹介します。
ワークフロー全体図
作成手順
1.文字列を代入
→変数「str_String」に「村上春樹の代表作品はノルウェイの森です。」を代入します。
2.【メッセージボックス】配置し、Substringメソッドで「ノルウェイの森」を取得
→「村上春樹の代表作品はノルウェイの森です。」から、開始位置(10文字目)と文字数(7文字)を直接数字で指定して取得します。
str_String.Substring(10,7).ToString
3.【メッセージボックス】配置し、「LastIndexOf」「Length」メソッドで開始位置を取得
→「LastIndexOf」「Length」メソッドを使って、開始位置(10文字目)の整数を取得します。
(str_String.LastIndexOf(“作品は”) + “作品は”.Length).ToString
→『LastIndexOf(“作品は”)』は、「作」前の文字位置(7)を返します。
『”作品は”.Length』は、「作品は」の文字数(3)を返します。
「7+3」で10を返します。
4.【メッセージボックス】配置し、「ノルウェイの森」の文字数を取得
→前述のLastIndexOfを使って、「ノルウェイの森」の前後、「作品は」「です。」の位置を取得して引き算して取得(7文字)します。
(str_String.LastIndexOf(“です。”) – (str_String.LastIndexOf(“作品は”) + “作品は”.Length)).ToString
5.上記2~4番を合算して一つにする
→2番の「Substring(10,7)」10と7の指定を、3番と4番の方法で置き換えて1文にします。
str_String.Substring(str_String.LastIndexOf(“作品は”) + “作品は”.Length , str_String.LastIndexOf(“です。”) – (str_String.LastIndexOf(“作品は”) + “作品は”.Length)).Tostring