UiPath Studioの開発で、文字列の操作は必要になることが多いです。
この記事では、文字列の結合、取得、追加、置換、削除、変換、分割、を、サンプル付きで紹介します。
関連記事 【UiPath】Udemyのオンラインコースでワンランク上のロボット作成技術を学ぶ

システム開発,クラウド構築,サービス企画まで幅広い経験を持つITエンジニア。当ブログでは、UiPathや資格取得のノウハウを発信します。profile詳細 / twitter:@fpen17
文字列の結合
文字列を結合する(+)
文字列の結合は、文字と文字の間に+を入れます。
String型の変数「str1」と「str2」と”xyzと”えお”の文字列を結合するコード
str1+str2+"xyz"+"えお"
・サンプルワークフロー
・実行結果
文字列を結合する(Concat)
文字列の結合は、Concat関数を利用しても出来ます。
String型の変数「str1」と「str2」と”xyzと”えお”の文字列を結合するコード
String.Concat(str1,str2,"xyz","えお")
・サンプルワークフロー
・実行結果
文字列の取得
文字列の長さを取得する(Length)
文字列の長さは、Lengthで取得します。
String型の変数「str1」の文字の長さを取得するコード
str1.Length
・サンプルワークフロー
・実行結果
文字列の途中から最後まで抽出する(Substring)
文字列の途中から最後まで抽出する場合は、SubStringを使います。
String型の変数「str1」の3文字目(位置は2番目)の文字を取得するコード
str1.String(2)
- ()内の1つ目の値:対象の位置 ※1文字目の位置は0であることに注意
・サンプルワークフロー
・実行結果
・その他のサンプルと実行結果
//より左側がコード、『』が出力結果、//より右側が出力結果のコメント
str1 = "abcあいう"
str1.Substring(0) //『abcあいう』 が出力される
str1.Substring(1) //『bcあいう』 が出力される
str1.Substring(2) //『cあいう』 が出力される
str1.Substring(3) //『あいう』 が出力される
str1.Substring(4) //『いう』 が出力される
str1.Substring(5) //『う』 が出力される
文字列の後ろから抽出する(Substring、Length)
文字列の後ろから抽出する場合は、SubStringとLengthを組み合わせます。
String型の変数「str1」の後ろから2文字を取得するコード
str1.Substring(str1.Length-2)
- ()内の1つ目の値:対象文字列の文字数(Length)から取得したい文字数を引く
・サンプルワークフロー
・実行結果
・その他のサンプルと実行結果
//より左側がコード、『』が出力結果、//より右側が出力結果のコメント
str1 = "abcあいう"
str1.Substring(str1.Length-1) //『う』 が出力される
str1.Substring(str1.Length-2) //『いう』 が出力される
str1.Substring(str1.Length-3) //『あいう』 が出力される
str1.Substring(str1.Length-4) //『cあいう』 が出力される
str1.Substring(str1.Length-5) //『bcあいう』 が出力される
文字列の一部を抽出する(Substring)
文字列の一部を抽出する場合も、SubStringを使います。
String型の変数「str1」の2文字目(位置は1)から3文字を取得するコード
str1.String(1,3)
- ()内の1つ目の値:対象の位置 ※1文字目の位置は0であることに注意
- ()内の2つ目の値:取得する文字数
・サンプルワークフロー
・実行結果
・その他のサンプルと実行結果
//より左側がコード、『』が出力結果、//より右側が出力結果のコメント
str1 = "abcあいう"
str1.Substring(1,2) //『bc』 が出力される
str1.Substring(2,3) //『cあい』 が出力される
str1.Substring(2,4) //『cあいう』 が出力される
str1.Substring(3,2) //『あい』 が出力される
str1.Substring(4,2) //『いう』 が出力される
指定文字列を前から検索して位置を取得する(IndexOf)
指定文字列を前から検索して位置を取得するのは、IndexOfを使用します。
String型の変数「str1」の”cd”の文字列の最初の位置を取得するコード
str1.IndexOf("cd")
- ()内の1つ目の値:検索対象の文字列
・サンプルワークフロー
・実行結果
・その他のサンプルと実行結果
//より左側がコード、『』が出力結果、//より右側が出力結果のコメント
str1 = "abcdeあいabcde"
str1.IndexOf("a") //『0』 が出力される
str1.IndexOf("b") //『1』 が出力される
str1.IndexOf("c") //『2』 が出力される
str1.IndexOf("bcd") //『1』 が出力される
str1.IndexOf("あ") //『5』 が出力される
str1.IndexOf("い") //『6』 が出力される
str1.IndexOf("あい") //『5』 が出力される
str1.IndexOf("か") //『-1』 が出力される
指定文字列を後ろから検索して位置を取得する(LastIndexOf)
指定文字列を後ろから検索して位置を取得するのは、LastIndexOfを使用します。
String型の変数「str1」の”abc”の文字列の最後の位置を取得するコード
str1.LastIndexOf("abc")
- ()内の1つ目の値:検索対象の文字列
・サンプルワークフロー
・実行結果
・その他のサンプルと実行結果
//より左側がコード、『』が出力結果、//より右側が出力結果のコメント
str1 = "abcdeあいabcde"
str1.LastIndexOf("a") //『7』 が出力される
str1.LastIndexOf("b") //『8』 が出力される
str1.LastIndexOf("c") //『9』 が出力される
str1.LastIndexOf("cde") //『9』 が出力される
str1.LastIndexOf("あ") //『5』 が出力される
str1.LastIndexOf("い") //『6』 が出力される
str1.LastIndexOf("あい") //『5』 が出力される
str1.LastIndexOf("z") //『-1』 が出力される
文字列の追加
指定した位置へ文字列を追加する(Insert)
指定位置への文字列の追加は、Insertを使用します。
String型の変数「str1」の3文字目の次に”@”を追加するコード
str1.Insert(3,"@")
- ()内の1つ目の値:追加する位置
- ()内の2つ目の値:追加する文字列
・サンプルワークフロー
・実行結果
・その他のサンプルと実行結果
//より左側がコード、『』が出力結果、//より右側が出力結果のコメント
str1 = "abcあいう"
str1.Insert(0,"@") //『@abcあいう』 が出力される。
str1.Insert(1,"@") //『a@bcあいう』 が出力される。
str1.Insert(2,"@") //『ab@cあいう』 が出力される。
str1.Insert(3,"@") //『abc@あいう』 が出力される。
str1.Insert(4,"@") //『abcあ@いう』 が出力される。
str1.Insert(5,"@") //『abcあい@う』 が出力される。
str1.Insert(6,"@") //『abcあいう@』 が出力される。
指定桁数になるまで、先頭文字の前に指定文字を追加する(PadLeft)
指定桁数になるまで、先頭文字の前に指定文字を追加するのは、PadLeftを使用します。
String型の変数「str1」の桁数が10になるまで先頭に0を追加するコード
str1.PadLeft(10,"0"c)
- ()内の1つ目の値:桁数
- ()内の2つ目の値:追加する文字列 ※Char型に変換するため、文字列の後ろにcを追加
・サンプルワークフロー
・実行結果
・その他のサンプルと実行結果
//より左側がコード、『』が出力結果、//より右側が出力結果のコメント
str1 = "1234"
str1.PadLeft(5,"0"c) //『01234』 が出力される
str1.PadLeft(6,"0"c) //『001234』 が出力される
str1.PadLeft(7,"0"c) //『0001234』 が出力される
str1.PadLeft(7,"@"c) //『@@@1234』 が出力される
指定桁数になるまで、末尾文字の後に指定文字を追加する(PadRight)
指定桁数になるまで、先頭文字の前に指定文字を追加するのは、PadRightを使用します。
String型の変数「str1」の桁数が10になるまで後ろに0を追加するコード
str1.PadRight(10,"0"c)
- ()内の1つ目の値:桁数
- ()内の2つ目の値:追加する文字列 ※Char型に変換するため、文字列の後ろにcを追加
・サンプルワークフロー
・実行結果
・その他のサンプルと実行結果
//より左側がコード、『』が出力結果、//より右側が出力結果のコメント
str1 = "1234"
str1.PadRight(5,"0"c) //『12340』 が出力される
str1.PadRight(6,"0"c) //『123400』 が出力される
str1.PadRight(7,"0"c) //『1234000』 が出力される
str1.PadRight(7,"@"c) //『1234@@@』 が出力される
改行を追加する(Environment.NewLine、vbCrLf )
UiPathで文字列に改行を追加するのは、Environment.NewLine か vbCrLf を使用します。
文字列abとcdの間に改行を追加するコード
"ab"+Environment.NewLine +"cd"
もしくは以下のコードでも同じ結果を得られます。
"ab"+vbCrLf +"cd"
・サンプルワークフロー1
※一つ目のアクティビティの式は、
str1 = “ab”+Environment.NewLine +”cd”
・実行結果1
・サンプルワークフロー2
・実行結果2
文字列の置換
指定文字列を別の文字列へ置き換える(Replace)
指定文字列を別の文字列へ置き換えるのは、Replaceを使用します。
String型の変数「str1」内の”bc”を”xyz”へ置換して出力するコード
str1.Replace("bc","xyz")
- ()内の1つ目の値:置換対象の文字列
- ()内の2つ目の値:置換後の文字列
・サンプルワークフロー
・実行結果
・その他のサンプルと実行結果
//より左側がコード、『』が出力結果、//より右側が出力結果のコメント
str1 = "abcあいうabcde"
str1.Replace("a","1") //『1bcあいう1bcde』が出力される
str1.Replace("a","123") //『123bcあいう123bcde』が出力される
str1.Replace("ab","1") //『1cあいう1cde』が出力される
str1.Replace("bc","xyz") //『axyzあいうaxyzde』が出力される
str1.Replace("あ","9") //『abc9いうabcde』が出力される
str1.Replace("あい","わ") //『abcわうabcde』が出力される
str1.Replace("あいう","かきくけこ") //『abcかきくけこabcde』が出力される
文字列の削除
文字列を左から指定文字数を削除する(Substring)
文字列を左から指定文字数を削除するのは、Substringを使用します。
String型の変数「str1」の左から2文字削除するコード
str1.Substring(2)
- ()内の1つ目の値:削除したい文字数
・サンプルワークフロー
・実行結果
・その他のサンプルと実行結果
//より左側がコード、『』が出力結果、//より右側が出力結果のコメント
str1 = "abcあいう"
str1.Substring(0) //『abcあいう』 が出力される
str1.Substring(1) //『bcあいう』 が出力される
str1.Substring(2) //『cあいう』 が出力される
str1.Substring(3) //『あいう』 が出力される
str1.Substring(4) //『いう』 が出力される
str1.Substring(5) //『う』 が出力される
文字列を右から指定文字数を削除する(Substring、Length)
文字列を右から指定文字数の削除は、SubstringとLengthを使用します。 Substringで先頭から削除する文字の一つ前まで取得することで、文字の削除を行います。
String型の変数「str1」の右から2文字削除するコード
str1.Substring(0,str1.Length-2)
- ()内の1つ目の値:0 ※先頭文字の位置である 0 を固定
- ()内の2つ目の値:対象文字列の文字数(Length)から削除したい文字数を引く
・サンプルワークフロー
・実行結果
・その他のサンプルと実行結果
//より左側がコード、『』が出力結果、//より右側が出力結果のコメント
str1 = "abcあいう"
str1.Substring(0,str1.Length-1) //『abcあい』 が出力される。
str1.Substring(0,str1.Length-2) //『abcあ』 が出力される。
str1.Substring(0,str1.Length-3) //『abc』 が出力される。
str1.Substring(0,str1.Length-4) //『ab』 が出力される。
str1.Substring(0,str1.Length-5) //『a』 が出力される。
文字列の指定位置以降を削除する(Remove)
文字列の指定位置以降を削除するのは、Removeを使用します。
String型の変数「str1」の3文字目以降(位置は2以降)を削除するコード
str1.Remove(2)
- ()内の1つ目の値:削除対象の指定位置 ※1文字目の位置は、0であることに注意
・サンプルワークフロー
・実行結果
・その他のサンプルと実行結果
//より左側がコード、『』が出力結果、//より右側が出力結果のコメント
str1 = "abcあいう"
str1.Remove(1) //『a』 が出力される
str1.Remove(2) //『ab』 が出力される
str1.Remove(3) //『abc』 が出力される
str1.Remove(4) //『abcあ』 が出力される
str1.Remove(5) //『abcあい』 が出力される
文字列の指定位置から指定文字数を削除する(Remove)
文字列の指定位置から指定文字数を削除するのも、Removeを使用します。
String型の変数「str1」の2文字目(位置は1)から2文字を削除するコード
str1.Remove(1,2)
- ()内の1つ目の値:削除開始位置 ※1文字目の位置は、0であることに注意
- ()内の2つ目の値:削除する文字数
・サンプルワークフロー
・実行結果
・その他のサンプルと実行結果
//より左側がコード、『』が出力結果、//より右側が出力結果のコメント
str1 = "abcあいう"
str1.Remove(1,2) //『aあいう』 が出力される。
str1.Remove(1,3) //『aいう』 が出力される。
str1.Remove(1,4) //『aう』 が出力される。
str1.Remove(1,5) //『a』 が出力される。
str1.Remove(2,1) //『abあいう』 が出力される。
str1.Remove(2,2) //『abいう』 が出力される。
str1.Remove(2,3) //『abう』 が出力される。
str1.Remove(2,4) //『ab』 が出力される。
str1.Remove(3,1) //『abcいう』 が出力される。
文字列の前後にある空白スペースを削除する(Trim)
文字列の前後にある空白スペースの削除は、Trimを使用します。
String型の変数「str1」の前後の空白スペースを削除するコード
str1.Trim
・サンプルワークフロー
・実行結果
※前後の空白スペースが削除されています
・その他のサンプルと実行結果
//より左側がコード、『』が出力結果、//より右側が出力結果のコメント
str1 = " abcあいう "
str1.Trim //『abcあいう』 が出力される
str1 = " abcあいう "
str1.Trim //『abcあいう』が出力される
str1 = " ab cあ いう "
str1.Trim //『ab cあ いう』が出力される
文字列の前にある空白スペースを削除する(LTrim)
文字列の前にある空白スペースの削除は、LTrimを使用します。
String型の変数「str1」の前の空白スペースを削除するコード
Ltrim(str1)
・サンプルワークフロー
・実行結果
※前の空白スペースが削除されています
・その他のサンプルと実行結果
//より左側がコード、『』が出力結果、//より右側が出力結果のコメント
str1 = " abcあいう "
LTrim(str1) //『abcあいう 』 が出力される
str1 = " abcあいう "
LTrim(str1) //『abcあいう 』 が出力される
str1 = " ab cあ いう "
LTrim(str1) //『ab cあ いう 』 が出力される
文字列の後にある空白スペースを削除する(RTrim)
文字列の後にある空白スペースの削除は、RTrimを使用します。
String型の変数「str1」の後ろの空白スペースを削除するコード
Rtrim(str1)
・サンプルワークフロー
・実行結果
※後の空白スペースが削除されています
・その他のサンプルと実行結果
//より左側がコード、『』が出力結果、//より右側が出力結果のコメント
str1 = " abcあいう "
RTrim(str1) //『 abcあいう』が出力される
str1 = " abcあいう "
RTrim(str1) //『 abcあいう』が出力される
str1 = " ab cあ いう "
RTrim(str1) //『 ab cあ いう』が出力される
文字列から指定文字列を削除する(Replace)
文字列から指定文字列を削除するのは、Replaceを使用します。
指定文字列を「文字列なし」に置換することで、文字列を削除することが出来ます。
String型の変数「str1」の”bc”を削除するコード
str1.Replace("bc","")
- ()内の1つ目の値:削除対象文字列 ※置換対象文字列
- ()内の2つ目の値:”” ※ 置換後の文字列。”” は文字列なしを意味する。
・サンプルワークフロー
・実行結果
・その他のサンプルと実行結果
//より左側がコード、『』内が実行結果、//より右側が出力結果のコメント。
str1 = "abcあいうabcde"
str1.Replace("a","") //『bcあいうbcde』 が出力される。
str1.Replace("b","") //『acあいうacde』 が出力される。
str1.Replace("c","") //『abあいうabde』 が出力される。
str1.Replace("bc","") //『aあいうade』 が出力される。
str1.Replace("あ","") //『abcいうabcde』 が出力される。
str1.Replace("い","") //『abcあうabcde』 が出力される。
str1.Replace("あい","") //『abcうabcde』 が出力される。
str1.Replace("d","") //『abcあいうabce』 が出力される。
str1.Replace("e","") //『abcあいうabcd』 が出力される。
str1.Replace("cde","") //『abあいうab』 が出力される。
str1.Replace("z","") //『abcあいうabcde』 が出力される。
文字列から改行を削除する(Replace)
文字列から改行を削除するのは、Replaceを使用します。
改行を表すChr(13)とChr(10)を「文字列なし」に置換することで、改行を削除することができます。
String型の変数「str1」の改行を削除するコード
str1.Replace(Chr(13), "").Replace(Chr(10), "")
・サンプルワークフロー
・読み込み対象テキストファイル
・実行結果
文字列を変換
文字列を数値へ変換する(Parse)
文字列を数値(Integer)へ変換するのは、Parseを使用します。
String型の変数「str1」を数値(Integer)へ変換するコード
Integer.Parse(str1)
・サンプルワークフロー
・実行結果
数値を文字列へ変換する(ToString)
数値(Integer)を文字列へ変換するのは、ToStringを使用します。
Int型の変数「int1」を文字列へ変換するコード
int1.ToString
・サンプルワークフロー
※int1、int2はInt型の変数
・実行結果
小文字を大文字へ変換する(ToUpper)
小文字を大文字へ変換するのは、ToUpperを使用します。
String型の変数「str1」の小文字を大文字へ変換するコード
str1.ToUpper
.サンプルワークフロー
・実行結果
大文字を子文字へ変換する(ToLower)
大文字を小文字へ変換するのは、ToLowerを使用します。
String型の変数「str1」の大文字を小文字へ変換するコード
str1.ToLower
.サンプルワークフロー
・実行結果
文字列の分割
文字列を指定文字で分割する(Split)
文字列を指定文字で分割するは、Splitを使用します。
String型の変数「str1」の区切り文字”,”の一つ目の文字を取得するコード
split(str1,"-")(0)
- Split()内の1つ目の値:対象文字列
- Split()内の2つ目の値:区切る文字列
- 2つ目の()内の値:区切った文字の位置
・サンプルワークフロー
・実行結果
・その他のサンプルと実行結果
//より左側がコード、『』が出力結果、//より右側が出力結果のコメント
str1 = "abc-123-de"
split(str1,"-")(0) //『abc』 が出力される
split(str1,"-")(1) //『123』 が出力される
split(str1,"-")(2) //『de』 が出力される
str1 = "abc/123/de"
split(str1,"/")(0) //『abc』 が出力される
split(str1,"/")(1) //『123』 が出力される
split(str1,"/")(2) //『de』 が出力される
まとめ
- 今回文字列の操作に使用した関数は、
+、Concat、Length、Substring、IndexOf、LastIndexOf、Insert、PadLeft、PadRight、Replace、Remove、Trim、LTrim、RTrim、Parse、ToString、ToUpper、ToLower、Split です。 - 使用頻度が高い関数は、+、Length、Substring、Replace、ToString、Splitです。この関数だけでも使いこなせれば、かなり効率的に開発できますので、是非覚えてください。
関連記事 【UiPath】Udemyのオンラインコースでワンランク上のロボット作成技術を学ぶ
\教育訓練給付金対象講座なら受講料最大45万円給付/
*オンライン個別説明会&相談会への参加は無料
関連記事 現役SEエフペンがもしIT未経験からWebエンジニアを目指すならプログラミングスクール【ディープロ】を受講する
