HTML内で特定の文字列を検索し、後に続く文字を取得したい。

はじめまして。
以下のようなことをUiPathで行いたいと考えています。

1.FireFoxでHTMLのソースを表示する。
2.検索窓を出し、「文字列」を検索する。
3.検索で「文字列」が見つかればその後に続く15桁の文字列を取得する。見つからなければ処理を終了する。

2までの処理はなんとかできたのですが、3の処理の方法が思いつかず困っております。
何か方法がありましたらご教授いただきたく、よろしくお願いいたします。

こんにちは

HTMLを一旦ファイルに保存する、あるいは画面経由等で、ソース全体を文字列変数に格納し、正規表現で抽出するのが手っ取り早いと思います。

Matches(一致する文字列を取得)アクティビティで以下の設定で抽出できます。
入力: HTMLソースを格納した文字列変数
パターン: "(?<=検索する文字列).{15}"
結果: 結果を格納する変数(Ctrl+kで生成すると楽です。)

1 Like

こんにちは。
早速のご返信をいただきありがとうございます。ご連絡が遅くなり申し訳ありません。

教えていただいた方法で希望の値を検索することはできたのですが、結果を変数に格納する箇所で困っております。

Ctrl+Kで変数が生成できるのは理解しているのですが、UiPath上ではどのような処理になるかご教授いただけないでしょうか。
初歩的な質問で申し訳ございませんが、よろしくお願いいたします。

1 Like

こんにちは

Matchesアクティビティは複数の結果を一つの変数に格納しているため、これを引き出すための手続きが必要になります。結果プロパティの中でCtrl+kを入力して、変数名を入力します。仮にこの変数を resultsとします。

もし結果の最初の一つだけを取得したいのであればresults.First().Value で値を取得できます。

すべての値を処理したいのであればループを使います。単純な例として以下参照ください

ForEachは繰り返し(コレクションの要素)になります。TypeArgumentプロパティにSystem.Text.Regulaexpressions.Matchを指定してください。

1 Like

ご丁寧にご教授いただきありがとうございました。
希望の値を取得することができました。
また、何かありましたらどうぞよろしくお願いいたします。

1 Like

This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.