t.mae
(t.mae)
1
みなさん、こんにちは。
現在、UiPath Studio開発 上級コースの「提出課題 1 セキュアハッシュ算出処理の自動化」に取り組んでいます。
ACME System 1 サイト(https://acme-test.uipath.com/) のWork Item Details ページ内から、
Client ID・Client Name・Client Country の3つ情報を[テキストを取得]アクティビティで取得し、
[代入] にて、取得した値を改行文字列で配列に分割し、出力引数に割り当てる。
という作業を実施しています。
[代入]には以下を入力しています。
左辺 : out_ClientID
右辺 : Information.Split(Environment.NewLine.ToCharArray)(0).Substring(“Client ID:”.Length)
すると以下のエラーが発生してしまいます。
代入: startIndex に文字列の長さより大きい値を指定することはできません。
パラメーター名:startIndex
[テキストを取得]アクティビティで取得したデータを見てみてみると
3つの情報の前に、余分に空白があるようで、
これが原因かと思っております。

そのため、空白を除いてテキストを取得できれば、
エラーが回避できると思い、タイトルの質問に至ります。
もしその他の原因や回避策があれば、ご教授いただけますと幸いです。
よろしくお願いいたします。
vrdabberu
(Varunraj Dabberu)
2
Hi @t.mae
Left side: out_ClientID
Right side: Information.Split(Environment.NewLine.ToCharArray)(0).Substring("Client ID:".Length).Trim()
Regards
Yoichi
(Yoichi)
3
こんにちは
以下の式をお試しください。
Information.Split(Environment.NewLine.ToCharArray,StringSplitOptions.RemoveEmptyEntries)(0).Trim().Substring("Client ID:".Length)
1 Like
t.mae
(t.mae)
4
Vrdabberuさん、Yoichiさん
早急なご回答ありがとうございます。
試してみたところ、
Vrdabberuさんの値を入れると、残念ながら同じエラーが出てしまいました。
Yoichiさんの値を入れると、”Client ID”はうまくいきました。
ただ、残り2つの[代入]にも、同じように値を入れてみたところ、
"Client Name"はうまく抽出できていないようで、
"Client Country"の部分では「代入: インデックスが配列の境界外です。」というエラーが発生しました。
こちらはどのように対処すべきでしょうか。
Yoichi
(Yoichi)
5
エラーが出ている部分はどのような式を使用していますでしょうか?
t.mae
(t.mae)
6
以下のように入力しています。
左辺 : out_ClientName
右辺 : Information.Split(Environment.NewLine.ToCharArray,StringSplitOptions.RemoveEmptyEntries)(2).Trim().Substring(“Client Name:”.Length)
左辺 : out_ClientCountry
右辺 : Information.Split(Environment.NewLine.ToCharArray,StringSplitOptions.RemoveEmptyEntries)(4).Trim().Substring(“Client Country:”.Length)
Yoichi
(Yoichi)
7
(2)と(4)の部分をそれぞれ(1)と(2)にしてみてください。
(StringSplitOptions.RemoveEmptyEntriesでデータのないitemは削除しているので)
1 Like
t.mae
(t.mae)
8
上記でうまくいきました!
早急にご教授いただきましてありがとうございました!
1 Like
system
(system)
Closed
9
This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.