Help us understand the problem. What is going on with this article?

【Automation Anywhere】高度な文字列と数値の処理 Meta Bot 6選

前回の記事「Bot Storeで新しい機能を追加しよう!」でBot Store上から拡張機能を簡単に追加する方法を紹介しました。この方法を使って、さっそくよく使われる処理を追加していきたいと思います。

今回は、文字列/数値処理でよく使われるAA純正の6つのMeta Botを紹介します。

Perform String and Number Operations

文字種の判別、変換、書式変更や数字を処理する10個の追加のコマンドを提供します。

image.png

算術処理

ロジック名 Inputパラメータ Outputパラメータ 説明
Arithmetic Operations on Numbers Input_Number_1:引数1
Input_Number_2:引数2
Arithmetic_Operation:演算子
Number_of_Decimals_in_Result:出力先の小数点以下の桁数。
Result:出力先の変数 演算子を使った算術演算を行います。演算子に指定できるもの="+-*/"
IsPositive InputString:引数 Result:出力先の変数 引数が正の値かどうかを判定します。(True/False)文字列の場合もFalseになります。

文字列処理

ロジック名 Inputパラメータ Outputパラメータ 説明
Add Zeroes before a Number Input_Number:引数
Desired_Length_Including_Zeroes:出力の桁数
Result:出力先の変数 桁数が指定したものになるよう、数字の前を0で埋めた文字列を返します。(ex. 4桁なら"0100")
Convert Number to Currency Culture_Name:引数
Input_Number:引数
Result:出力先の変数 指定したCulture_Nameの通貨で引数をフォーマットした文字列を返します。(ex. enなら$100)
Convert Number to Text Input_Number:引数
IsIndianFormat:インド方言(true/false)
Result:出力先の変数 引数の数字を、読み方の英単語に変換します。(ex: 100000 → One hundred Thousand)
IsAlphanumeric Input_Number:引数 Result:出力先の変数 引数が英数字かを判別します。(True/False)
IsDate Input_Number:引数 Result:出力先の変数 引数が日付かを判別します。(True/False)
IsNumeric Input_Number:引数 Result:出力先の変数 引数が数字かを判別します。(True/False)
IsSpecialCharacter Input_Number:引数 Result:出力先の変数 引数が記号かを判別します。(True/False)
Remove Special Characters Input_Number:引数 Result:出力先の変数 引数から記号を取り除きます。
Arithmetic Operations on Numbersの例: 
Input_Number_1="10", Input_Number_2="5"
Arithmetic_Operation="+", Number_of_Decimals_in_Result="2"
結果:"15.00"

Perform Japanese Utilities

半角/全角の変換、および日付書式の西暦/和暦の変換を行うことができます。

ロジック名 Inputパラメータ Outputパラメータ 説明
ToFullWidth vInput:入力文字列 vOutput:出力先の変数 半角文字で対応する全角文字があるものを全角文字に変更します。
ToGregorianCalendar vInput:日付/時刻文字列
vInputFormat:入力文字列の日付形式
vOutputFormat:出力文字列の日付形式
vOutput:出力先の変数 日付/時刻の書式を指定した西暦の書式に変更します。
ToHalfWidth vInput:入力文字列 vOutput:出力先の変数 全角文字で対応する半角文字があるものを半角文字に変更します。
ToJapaneseCalendar vInput:日付/時刻文字列
vInputFormat:入力文字列の日付形式
vOutputFormat:出力文字列の日付形式
vOutput:出力先の変数 日付/時刻の書式を指定した和暦の書式に変更します。(令和対応)
ToFullWidthの例: 
vInput="012345アイウエオabcde"
結果:"012345アイウエオabcde"
ToHalfWidthの例: 
vInput="012345あいうえおアイウエオ"
結果:"012345あいうえおアイウエオ"
ToJapaneseCalendarの例: 
vInput="09/02/2019 09:00:00 PM", vInputFormat="MM/dd/yyyy", vOutputFormat="ggy年M月d日"
結果: "令和元年9月2日"

Email Address Validator

文字列が電子メールアドレスとして正しいフォーマットかを検証します。

ロジック名 Inputパラメータ Outputパラメータ 説明
EmailAddressValidator vEmailAddress:検証する文字列。 vConfirm:出力先の変数 vEmailAddressが電子メールアドレスとして正しいフォーマットかを検証します。(valid/invalid)

Remove HTML Tags

入力した文字列からHTMLタグを取り去った文字列を出力します。入力文字列によってはエラーが発生する可能性があるので、Error Handlingを行ってください。

ロジック名 Inputパラメータ Outputパラメータ 説明
RemoveHTMLTags vInputString:加工する文字列。 vOutputString:出力先の変数 入力した文字列からHTMLタグを取り去った文字列を出力します。

例: 入力する文字列

<!--
/* Font Definitions */
@font-face
                {font-family:"Cambria Math";
                panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
                {font-family:Calibri;
                panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
                {font-family:Verdana;
                panose-1:2 11 6 4 3 5 4 4 2 4;}
@font-face
                {font-family:Roboto;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
                {margin:0in;
                margin-bottom:.0001pt;
                font-size:11.0pt;
                font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
                {mso-style-priority:99;
                color:blue;
                text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
                {mso-style-priority:99;
                color:purple;
                text-decoration:underline;}
p.msonormal0, li.msonormal0, div.msonormal0
                {mso-style-name:msonormal;
                mso-margin-top-alt:auto;
                margin-right:0in;
                mso-margin-bottom-alt:auto;
                margin-left:0in;
                font-size:11.0pt;
                font-family:"Calibri",sans-serif;}
span.EmailStyle18
                {mso-style-type:personal;
                font-family:"Calibri",sans-serif;
                color:windowtext;}
span.EmailStyle19
                {mso-style-type:personal-reply;
                font-family:"Calibri",sans-serif;
                color:windowtext;}
.MsoChpDefault
                {mso-style-type:export-only;
                font-size:10.0pt;}
@page WordSection1
                {size:8.5in 11.0in;
                margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
                {page:WordSection1;}
-->
<p class="MsoNormal"><strong><u><span style="font-size:12.0pt;font-family:&quot;Calibri&quot;,sans-serif;color:black">Effective:
</span></u></strong><strong><u><span style="font-size:12.0pt;font-family:&quot;Calibri&quot;,sans-serif">4/26/19</span></u></strong><u><span style="font-size:12.0pt;color:maroon"><o:p></o:p></span></u></p>


<p class="MsoNormal"><b>Effective: 1/29/19<o:p></o:p></b></p>

<p class="MsoNormal"><span style="font-size:9.0pt;font-family:&quot;Verdana&quot;,sans-serif">Effective Date: 2019 03 29
<br>

結果:

Effective:
4/26/19


Effective: 1/29/19

Effective Date: 2019 03 29

Perform Various Math Operations

端数処理、三角関数/逆三角関数/双曲線関数、累乗/平方根、最大値/最小値/絶対値など、19個の高度な数学の関数を提供します。その振る舞いは.NETの動作に準拠します。

image.png

端数処理

ロジック名 Inputパラメータ Outputパラメータ 説明
Ceiling vInput:入力値。 vOutput:出力先の変数 切り上げた整数の値を得ます。
Floor vInput:入力値。 vOutput:出力先の変数 切り捨てた整数の値を得ます。(負の値の場合は元の値を超えない整数)
Round vInput:入力値。
vDigits:入力値。
vMode:入力値。
vOutput:出力先の変数 最近接偶数丸め(vMode=0)/四捨五入(vMode=1)を小数点以下vDigitsの桁数を残すように行った数を得ます。
Truncate vInput:入力値。 vOutput:出力先の変数 切り捨てた整数の値を得ます。(負の値の場合は整数部分を返す)

三角関数

ロジック名 Inputパラメータ Outputパラメータ 説明
Sin vInput:入力値。 vOutput:出力先の変数 入力値のSin関数を得ます。引数はラジアン単位の角度を指定します。
Cos vInput:入力値。 vOutput:出力先の変数 入力値のCos関数を得ます。引数はラジアン単位の角度を指定します。
Tan vInput:入力値。 vOutput:出力先の変数 入力値のTan関数を得ます。引数はラジアン単位の角度を指定します。

逆三角関数

ロジック名 Inputパラメータ Outputパラメータ 説明
Asin vInput:入力値。 vOutput:出力先の変数 入力値の逆Sin関数を得ます。戻り値としての角度はラジアンを使って -π/2 から π/2 までの範囲で表されます。
Acos vInput:入力値。 vOutput:出力先の変数 入力値の逆Cos関数を得ます。戻り値としての角度はラジアンを使って 0 から π までの範囲で表されます。
Atan vInput:入力値。 vOutput:出力先の変数 入力値の逆Tan関数を得ます。戻り値としての角度はラジアンを使って -π/2 から π/2 までの範囲で表されます。
Atan2 vInput1:入力値1。
vInput2:入力値2。
vOutput:出力先の変数 入力値の逆Tan関数を得ます。ATan(vInput2/vInput1)=ATan(vInput1, vInput2) vInput=0にできるのがATan関数との違いです。

双曲線関数

ロジック名 Inputパラメータ Outputパラメータ 説明
Sinh vInput:入力値。 vOutput:出力先の変数 入力値のSinh関数を得ます。
Cosh vInput:入力値。 vOutput:出力先の変数 入力値のCosh関数を得ます。
Tanh vInput:入力値。 vOutput:出力先の変数 入力値のTanh関数を得ます。

累乗/平方根

ロジック名 Inputパラメータ Outputパラメータ 説明
Pow vInput1:入力値1。
vInput2:入力値2。
vOutput:出力先の変数 vInput1のvInput2乗の累乗を得ます。
Sqrt vInput:入力値。 vOutput:出力先の変数 平方根を得ます。

最大値/最小値/絶対値

ロジック名 Inputパラメータ Outputパラメータ 説明
Abs vInput:入力値。 vAbsValue:出力先の変数 絶対値を得ます。
Max vInput1:入力値1。
vInput2:入力値2。
vOutput:出力先の変数 vInput1とvInput2のうち大きいほうを得ます。
Min vInput1:入力値1。
vInput2:入力値2。
vOutput:出力先の変数 vInput1とvInput2のうち小さいほうを得ます。

Translator Metabot

Yandex 機械翻訳サービスに接続してテキストを翻訳します。90言語以上をサポートします1

ロジック名 Inputパラメータ Outputパラメータ 説明
An easy translator Metabot vLangDetect:元の言語。指定しなくてもよいがその場合は空の変数を指定。
vLang:翻訳先の言語 (ex: en)。
vText:翻訳するテキスト。
vResult:出力先の変数 vTextを指定した言語に翻訳します。
例1: 
vLangDetect=(空の変数)
vLang="en"
vText="O robô detecta o idioma do documento, E traduz para o idioma que você quer."
結果:"The robot detects the languauge of the document, And translates it to the language you want."
例2: 
vLangDetect=(空の変数)
vLang="ja"
vText="O robô detecta o idioma do documento, E traduz para o idioma que você quer."
結果:"ロボットを検出し語の文書を変換しい言語に対応しています。"

2


  1. Yandex 機械翻訳サービスは日本語への翻訳品質はあまりよくないようです。Google翻訳、Bing翻訳の方が優れています。 

  2. Google翻訳/Bing翻訳では「ロボットはドキュメントの言語を検出し、必要な言語に変換します。」と訳されます。 

Why do not you register as a user and use Qiita more conveniently?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away