条件に一致した文字列かどうかを判断したい

EXCELの場合、COUNTIF関数とSUM関数を組み合わせて、添付のように
文字が含まれているかを判断可能ですが、これをUipathで実現すること可能でしょうか?
サンプルはデータ量が少ないですが、実際のデータは、1000件近くあります。
また条件のデータ数と判断したいデータは増えていきます。

ご教示をお願いします。

こんにちは

例えば以下で可能です。一度お試しください。

dtResult = dt2.AsEnumerable.Select(Function(r) dt2.Clone.LoadDataRow({r("品名"),dt1.AsEnumerable.Any(Function(r2) r("品名").ToString.Contains(r2("文字検索").ToString())).ToString},False)).CopyToDataTable()

Sample20221001-1.zip (7.8 KB)

Regards,

サンプルを作成いただきありがとうございます。
すみません。作成いただいたのに、条件が誤っておりました。
下記のように、検索する文字が複数ある場合の判断でした。
こういった場合は、さらに複雑な構文になってしまいますでしょうか?
vbaやC言語の知識がなく・・・


data2.xlsx (10.1 KB)

こんにちは

この要件なら正規表現の方が良いですね

検索文字列を以下の様にして

20221003-3

以下の式を使用します。

dt2.AsEnumerable.Select(Function(r) dt2.Clone.LoadDataRow({r("品名"),dt1.AsEnumerable.Any(Function(r2) System.Text.RegularExpressions.Regex.IsMatch(r("品名").ToString,r2("文字検索").ToString())).ToString},False)).CopyToDataTable()

Sample20221001-1v2.zip (24.1 KB)

ご教示ありがとうございます。

実際のデータですが、英数字(一部カタカナあり)になります。
文字検索:Core とi7-10700にが含まれている場合にTureにしたい。
品名は、Coreやi7以外の文字が、前後にあるため、*にしておりました。
すみません。このような場合はできますでしょうか?

image

data3.xlsx (9.9 KB)
品名は、このような文字列になります。

こんにちは

正規表現の場合、ワイルドカードではありませんので
上記の場合、前後のアスタリスクは削除
中間のアスタリスクは

.*

のように、ピリオド+アスタリスクに
置き換えると同じワークフローで動作すると思います。

なお厳密には正規表現の特殊文字はエスケープする必要がありますが、まずは上記をお試しください。

ありがとうございます!実現できました!
EXCELで関数で求めると時間がかかっていたので、助かります!
いろんなメソッドの組み合わせになるので、私には難しいですが、ググって
勉強したいと思います。

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