本記事はUiPath初学者を対象として、基本的な操作を伝えることを目的としています。
VB.NETメソッドは、UiPathを学んでいく上で必須のメソッドです。
これを使用することによって、文字を加工したり日付を加工したり様々な操作ができるようになります。
本記事ではVB.NETメソッドを使用してUiPathで文字列を操作する方法のうち、文字列を分割するSplitメソッドについて詳しく解説します。
目次
Splitメソッドを使ってできること
Splitメソッドを用いることで文字列を分割し、必要な文字列だけを抽出することができます。
Splitメソッドを使用するケースの一例を挙げます。
- ファイルパスを「¥」で区切り、ファイル名だけを取得する
“C:¥ユーザー¥Documents¥ファイル名.xlsx” → ”ファイル名.xlsx” - アドレスを「@」で区切ってドメイン部分だけを取得し、ドメインごとに処理を分岐する
“username@company.com” → ”company.com” - メール本文を「改行」で区切って1行ずつ処理し、本文から必要な情報だけを取得する
Splitメソッドで文字列を分割する
Splitは、区切り文字で分割し、String型の配列を返すメソッドです。
Splitメソッドの基本的な書き方は以下の通りです。
例えば、“ABC/Pa/th”という文字列をスラッシュ(/)で分割したい場合、次のように書きます。
“ABC/Pa/th”.Split(“/”)
複数の文字で分割する
紹介した方法では区切り文字は1文字しか設定することができませんが、
区切り文字に「.ToCharArrayメソッド」を使用することで、区切り文字を複数設定することが可能になります。
■1文字のみ
文字列.Split(“区切り文字”)
例:”xxxAyyyBzzz”.Split(“A”)
■複数文字
文字列.Split(“複数の区切り文字”.ToCharArray)
例:“xxxAyyyBzzz”.Split(“AB”.ToCharArray)
.ToCharArrayメソッドは、文字列を1文字ずつの配列にします。
これにより、“AB”.ToCharArrayは”A”と”B”の配列になり、それぞれの文字で分割できるようになります。
文字列を取得する
次に、分割した文字列の取得する方法をご説明します。
分割された配列からいずれかの値を取得するには、以下のように指定します。
“文字列”.Split(“区切り文字”)(n)
n:何番目の値を取得したいか、0始まりの番号で指定
配列は、0始まりの番号で指定することで任意の番号の文字列を取得することができます。
“ABC/Pa/th”.Split(“/”)(0)
→”ABC”
“ABC/Pa/th”.Split(“/”)(1)
→”Pa”
“ABC/Pa/th”.Split(“/”)(2)
→”th”
配列の文字列を繰り返し、1つずつ処理する
配列の文字列を1つずつ処理するには、「繰り返し(コレクションの各要素)」アクティビティを使用します。
メール本文を改行で区切り1行ずつ処理する等、分割した各要素をすべて処理する必要があるときに使用します。
改行で分割する
例示したメール本文を1行ずつ処理するには改行を用いる必要がありますが、
区切文字に改行を指定するには「改行コード」を使用する必要があります。
改行コードは取得元のシステム等によって異なり、次のいずれかを用いるので、合わせて覚えておきましょう。
- vbCrLf
- vbCr
- vbLf
多くの場合vbCrLfで分割できますが、うまくいかない場合は他の改行コードを試してみてください。
Splitを活用してUiPathで自動化を進めましょう
今回はVB.NETメソッドの文字列操作のうち、Splitをご紹介しました。
使用頻度の高い関数なので習得しておきましょう。
実際にSplitを使用する際、他のアクティビティと組み合わせて使用することになります。
UiPathに限らず、RPAを使い始めた際には開発の中で不明点があった時、どこでつまづいているのかを特定するのに時間がかかったり、周りに相談できる相手がいないことが多くあります。
時間をかけて初歩的な知識をキャッチアップするのではなく、いつでもどこでもRPAのプロフェッショナルに相談でき、スムーズに開発できる環境を「Robo Runner」で手に入れませんか。
「Robo Runner」とは
いつでも気軽に、プロに直接聞けて、すぐに解決できる、RPA開発のサポートサービスです。
開発や運用の中で不明点があった時、週1回1時間のオンライン面談や、質問回数を気にすることない無制限のチャットツールを通して現役エンジニアに直接相談することができます。
ぜひお気軽にお問い合わせください。
コメントを残す