【UiPath】Substringメソッドで、文字列の一部を取得する方法+LastIndexOf・Lengthメソッド

概要

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

メッセージボックス_5.上記2~4を合算して一つにする

関連記事

【UiPath】改行された文字列から所定の文字を抽出する方法