泛型值变量是一种变量,可以存储任何类型的数据,包括文本、数字、日期和数组,并且是 UiPath Studio 特有的。
泛型值变量自动转换为其他类型,以便执行某些操作。但是,请务必谨慎地使用这些类型的变量,因为变量转换并非总是适合您的项目。
UiPath Studio 具有泛型值变量的自动转换机制,您可以通过仔细定义它们的表达式来引导它们达到预期结果。考虑到表达式中的第一个元素用作 Studio 执行操作时的准则。例如,当您尝试添加两个泛型值变量时,如果表达式中的第一个变量定义为字符串,则结果是这两个变量的拼接。如果第一个变量定义为整数,则结果是这些整数的和。
支持的 .NET 方法
名称/语法 | 描述 |
---|---|
比较对象Function GenericValue.CompareTo(other As GenericValue) As Integer Function GenericValue.CompareTo(obj As Object) As Integer | [单击此处以了解详细信息。][1] [1]: String.CompareTo Method (System) | Microsoft Docs |
包含Function GenericValue.Contains(other As String) As Boolean | [单击此处以了解详细信息。][2] [2]: String.Contains Method (System) | Microsoft Docs 用于检查字符串变量是否包含某个子字符串。例如,如果您想检查一个句子是否包含一个特定的单词,表达式应该是 [SentenceVariable].Contains("term") ,其中 [SentenceVariable] 是包含该句子的泛型值变量,"term" 是要搜索的单词。注意:当将此方法与数据类型为整数、浮点或布尔值的泛型值变量一起使用时,数据将自动转换为字符串,并进行相应的处理。 |
等于Function GenericValue.Equals(other As GenericValue) As Boolean Function GenericValue.Equals(obj As Object) As Boolean | [单击此处以了解详细信息。][3] [3]: String.Equals Method (System) | Microsoft Docs |
获取散列代码Function GenericValue.GetHashCode() As Integer | [单击此处以了解详细信息。][5] [5]: String.Format Method (System) | Microsoft Docs |
获取类型Function Object.GetType() As Type | [单击此处以了解详细信息。][6] [6]: Object.GetType Method (System) | Microsoft Docs |
获取类型代码Function GenericValue.GetTypeCode() As TypeCode | [单击此处以了解详细信息。][7] [7]: String.GetTypeCode Method (System) | Microsoft Docs |
索引对象Function GenericValue.IndexOf(value As String) As Integer Function GenericValue.IndexOf(value As String, comparisonType As StringComparison) As Integer Function GenericValue.IndexOf(value As String, startIndex As Integer) As Integer Function GenericValue.IndexOf(value As String, startIndex As Integer, comparisonType As StringComparison) As Integer | [单击此处以了解详细信息。][8] [8]: String.IndexOf Method (System) | Microsoft Docs 用于返回字符串变量中包含的子字符串的索引。例如,如果您想找到“Find 'locate' in this sentence”句子中“locate”一词的索引,表达式应该为 [SentenceVariable].IndexOf("locate") ,其中 [SentenceVariable] 是包含该句子的泛型值变量,"locate" 是要搜索的词语。注意:当将此方法与数据类型为整数、浮点或布尔值的泛型值变量一起使用时,数据将自动转换为字符串,并进行相应的处理。 |
长度Function GenericValue.Lenght() As Integer | [单击此处以了解详细信息。][9] [9]: String.Length Property (System) | Microsoft Docs 用于返回字符串变量中的字符数。例如,如果您想知道一个单词有多少字母,那么表达式应该是 [WordVariable].Length ,其中 [WordVariable] 是指包含该单词的泛型值变量。注意:当将此方法与数据类型为整数、浮点或布尔值的泛型值变量一起使用时,数据将自动转换为字符串,并进行相应的处理。 |
替换Function GenericValue.Replace(oldValue As String, new value As String) As String | [单击此处以了解详细信息。][10] [10]: String.Replace Method (System) | Microsoft Docs 用于替换字符串变量中包含的数据。例如,如果您要将本地文件路径 C:\ExampleFolder\Main.xaml 更改为对应的服务器文件路径 C:/ExampleFolder/Main.xaml ,则表达式应该是 [PathVariable].Replace("\","/") ,其中 [PathVariable] 是包含该文件路径的泛型值变量,"\" 是要替换的字符,"/" 是用作替换内容的字符。注意:当将此方法与数据类型为整数、浮点或布尔值的泛型值变量一起使用时,数据将自动转换为字符串,并进行相应的处理。 |
拆分Function GenericValue.Split(ParamArray separator As Char()) As String() Function GenericValue.Split(ParamArray separator As String()) As String() Function GenericValue.Split(separator As Char(), options As StringSplitOptions) As String() Function GenericValue.Split(separator As String(), options As StringSplitOptions) As String() | [单击此处以了解详细信息。][11] [11]: String.Split Method (System) | Microsoft Docs 用于返回字符串变量中的各个组成部分。例如,如果您想从 MM.DD.YYYY 日期格式中提取年份,表达式应该是 [DateVariable].Split(".".ToCharArray)(2) ,其中 [DateVariable] 是包含日期的泛型值变量,"." 是用作分隔符的字符,.ToCharArray 是使用分隔符界定的元素创建数组的一种方法,(2) 表示要返回的元素的索引,在我们的情况中,是年份。注意:当将此方法与数据类型为整数、浮点或布尔值的泛型值变量一起使用时,数据将自动转换为字符串,并进行相应的处理。 |
子字符串Function GenericValue.Substring(startIndex As Integer) As String Function GenericValue.Substring(startIndex As Integer, length As Integer) As String | [单击此处以了解详细信息。][12] [12]: String.Substring Method (System) | Microsoft Docs 用于返回字符串变量中包含的子字符串。例如,如果您想从“There are 100 machines available”句子中提取一个单词,表达式应该为 [SentenceVariable].Substring(10,3) ,其中 [SentenceVariable] 是包含该句子的泛型值变量,10 是要返回的第一个字符的索引,3 是子字符串的长度(从第一个字符开始计算)。在此示例中,产生的子字符串应该是“100”。注意:当将此方法与数据类型为整数、浮点或布尔值的泛型值变量一起使用时,数据将自动转换为字符串,并进行相应的处理。 |
换为布尔值Function GenericValue.ToBoolean(provider As IFormatProvider) As Boolean | [单击此处以了解详细信息。][13] [13]: String.IConvertible.ToBoolean(IFormatProvider) Method (System) | Microsoft Docs |
换为字节Function GenericValue.ToByte(provider As IFormatProvider) As Byte | [单击此处以了解详细信息。][14] [14]: String.IConvertible.ToByte(IFormatProvider) Method (System) | Microsoft Docs |
换为字符Function GenericValue.ToChar(provider As IFormatProvider) As Char | [单击此处以了解详细信息。][15] [15]: String.IConvertible.ToChar(IFormatProvider) Method (System) | Microsoft Docs |
换为小数Function GenericValue.ToDecimal(provider As IFormatProvider) As Decimal Function GenericValue.ToDecimal(format As NumberStyles) As Decimal | [单击此处以了解详细信息。][17] [17]: String.IConvertible.ToDecimal(IFormatProvider) Method (System) | Microsoft Docs |
换为倍数Function GenericValue.ToDouble(provider As IFormatProvider) As Double Function GenericValue.ToDouble(format As NumberStyles) As Double | [单击此处以了解详细信息。][18] [18]: String.IConvertible.ToDouble(IFormatProvider) Method (System) | Microsoft Docs |
换为整数Function GenericValue.ToInt(culture As IFormatProvider) As Integer? Function GenericValue.ToInt() As Integer? | 用于将指定值转换为可空整数。 注意:当将此方法与数据类型布尔值的泛型值变量一起使用时,“True”和“false”值将分别转换为 1 和 0。 |
换为 16 位整数Function GenericValue.ToInt16(provider As IFormatProvider) As Short | [单击此处以了解详细信息。][20] [20]: String.IConvertible.ToInt16(IFormatProvider) Method (System) | Microsoft Docs 注意:当将此方法与数据类型布尔值的泛型值变量一起使用时,“True”和“false”值将分别转换为 1 和 0。 |
换为 32 位整数Function GenericValue.ToInt32(provider As IFormatProvider) As Integer | [单击此处以了解详细信息。][21] [21]: String.IConvertible.ToInt32(IFormatProvider) Method (System) | Microsoft Docs 注意:当将此方法与数据类型布尔值的泛型值变量一起使用时,“True”和“false”值将分别转换为 1 和 0。 |
换为 64 位整数Function GenericValue.ToInt64(provider As IFormatProvider) As Long | [单击此处以了解详细信息。][22] [22]: String.IConvertible.ToInt64(IFormatProvider) Method (System) | Microsoft Docs 注意:当将此方法与数据类型布尔值的泛型值变量一起使用时,“True”和“false”值将分别转换为 1 和 0。 |
换为小写Function GenericValue.ToLower() As String | [单击此处以了解详细信息。][23] [23]: String.ToLower Method (System) | Microsoft Docs 注意:当将此方法与数据类型为整数、浮点或布尔值的泛型值变量一起使用时,数据将自动转换为字符串,并进行相应的处理。 |
换为小写不变量Function GenericValue.ToLowerInvariant() As String | [单击此处以了解详细信息。][24] [24]: String.ToLowerInvariant Method (System) | Microsoft Docs 注意:当将此方法与数据类型为整数、浮点或布尔值的泛型值变量一起使用时,数据将自动转换为字符串,并进行相应的处理。 |
换为带符号字节Function GenericValue.ToSByte(provider As IFormatProvider) As SByte | [单击此处以了解详细信息。][25] [25]: String.IConvertible.ToSByte(IFormatProvider) Method (System) | Microsoft Docs |
换为单值Function GenericValue.ToSingle(provider As IFormatProvider) As Single | [单击此处以了解详细信息。][26] [26]: String.IConvertible.ToSingle(IFormatProvider) Method (System) | Microsoft Docs |
到字符串Function GenericValue.ToString(formatProvider As IFormatProvider) As String Function GenericValue.ToString(format As String, formatProvider As IFormatProvider) As String Function GenericValue.ToString() As String | [单击此处以了解详细信息。][27] [27]: String.ToString Method (System) | Microsoft Docs |
换为类型Function GenericValue.ToType(conversionType As Type, provider As IFormatProvider) As Object | [单击此处以了解详细信息。][29] [29]: String.IConvertible.ToType(Type, IFormatProvider) Method (System) | Microsoft Docs |
换为无符号 16 位整数Function GenericValue.ToUInt16(provider As IFormatProvider) As UShort | [单击此处以了解详细信息。][30] [30]: String.IConvertible.ToUInt16(IFormatProvider) Method (System) | Microsoft Docs 注意:当将此方法与数据类型布尔值的泛型值变量一起使用时,“True”和“false”值将分别转换为 1 和 0。 |
换为无符号 32 位整数Function GenericValue.ToUInt32(provider As IFormatProvider) As UInteger | [单击此处以了解详细信息。][31] [31]: String.IConvertible.ToUInt32(IFormatProvider) Method (System) | Microsoft Docs 注意:当将此方法与数据类型布尔值的泛型值变量一起使用时,“True”和“false”值将分别转换为 1 和 0。 |
换为无符号 64 位整数Function GenericValue.ToUInt64(provider As IFormatProvider) As Ulong | [单击此处以了解详细信息。][32] [32]: String.IConvertible.ToUInt64(IFormatProvider) Method (System) | Microsoft Docs 注意:当将此方法与数据类型布尔值的泛型值变量一起使用时,“True”和“false”值将分别转换为 1 和 0。 |
换为大写Function GenericValue.ToUpper() As String | [单击此处以了解详细信息。][33] [33]: String.ToUpper Method (System) | Microsoft Docs 注意:当将此方法与数据类型为整数、浮点或布尔值的泛型值变量一起使用时,数据将自动转换为字符串,并进行相应的处理。 |
换为大写不变量Function GenericValue.ToUpperInvariant() As String | [单击此处以了解详细信息。][34] [34]: String.ToUpperInvariant Method (System) | Microsoft Docs 注意:当将此方法与数据类型为整数、浮点或布尔值的泛型值变量一起使用时,数据将自动转换为字符串,并进行相应的处理。 |
剪裁Function GenericValue.Trim(ParamArray trimChars As Char()) As String Function GenericValue.Trim() As String | [单击此处以了解详细信息。][35] [35]: String.Trim Method (System) | Microsoft Docs 注意:当将此方法与数据类型为整数、浮点或布尔值的泛型值变量一起使用时,数据将自动转换为字符串,并进行相应的处理。 |
剪裁结束Function GenericValue.TrimEnd(ParamArray trimChars As Char()) As String | [单击此处以了解详细信息。][36] [36]: String.TrimEnd Method (System) | Microsoft Docs 注意:当将此方法与数据类型为整数、浮点或布尔值的泛型值变量一起使用时,数据将自动转换为字符串,并进行相应的处理。 |
剪裁开始Function GenericValue.TrimStart(ParamArray trimChars As Char()) As String | [单击此处以了解详细信息。][37] [37]: String.TrimStart Method (System) | Microsoft Docs 注意:当将此方法与数据类型为整数、浮点或布尔值的泛型值变量一起使用时,数据将自动转换为字符串,并进行相应的处理。 |
直接在“格式值”**活动正文中使用 Ctrl + K、Ctrl + M 或 Ctrl + Shift + M 时,创建的变量或参数的类型为“通用值”**。对于其他活动,创建的类型与活动的必需类型相同。
使用泛型值变量的示例
为了演示泛型值变量的工作方式,我们来创建一个执行不同操作的自动化,这些操作的结果取决于我们定义表达式的方式。我们创建两个不同数据类型的泛型值变量,并在“输出”面板中显示结果。****
- 创建一个新的空白项目。
- 创建三个泛型值变量:
Int
、Str
和Result
。 - 在
Int
变量的“默认值”列中,键入 12,对于Str
变量,请键入“34”。****第一个变量解释为整数,而第二个变量解释为字符串。
- 向“设计器”面板添加“赋值”活动,并将其连接到“开始”节点。****
- 在“属性”面板的“至”字段中,输入
Result
变量。**** - 在“值”字段中,键入
Int
+Str
。**** - 添加“写入行”活动,并将其连接到“赋值”活动。****
- 在“属性”面板的“至”字段中,输入
Result
变量。****
项目的呈现应如以下屏幕截图所示。
- 按 F5 可执行自动化。注意,在“输出”面板中,将显示这两个数字的和。****
- 返回到之前添加的“赋值”活动,并将“值”字段更改为
Str
+Int
,以反转变量的顺序。****项目的呈现应如以下屏幕截图所示。
- 按 F5 可执行自动化。注意,在“输出”面板中,将显示这两个数字的拼接。****
这意味着 UiPath Studio 将表达式中定义的第一个元素作为要执行的操作的准则。如果表达式中的第一个元素是整数或作为整数填充的通用值变量,则 UiPath Studio 将执行元素的汇总。
如果表达式中的第一个元素是字符串或作为字符串填充的通用值变量,则 UiPath Studio 将执行元素的拼接。