转换函数将一种数据类型或格式转换为另一种数据类型或格式。使用转换函数可将数字转换为字符串,或将字符串转换为数字。转换函数可用于字符串和数值数据类型。
BinToInt(s)
:将二进制字符串(s)转换为整数。它的精度限制为 64 位,长度最多可达 64 位。
BinToInt("101010101")
返回 341。如果字符串长度正好为 32 或 64 个字符,则会被视为有符号数字:BinToInt("11111111111111111111111111111011")
返回 -5。前导符号‘+’和‘-’的优先级高于将 32 个和 64 个字符视为有符号数字的规则:BinToInt("-111")
返回 -7。BinToInt("+111")
返回 7。
CharFromInt(x)
:返回与输入数字 x 相匹配的 Unicode® 字符。
CharFromInt(66)
返回 B(U+0042“拉丁大写字母 B”)。CharFromInt(169)
返回 ©(U+00A9“版权符号”)。CharFromInt(1071)
返回 Я(U+042F“西里尔大写字母 YA”)。CharFromInt(127944)
返回 🏈(U+1F3C8“美式足球”)。CharFromInt(0)
返回 [null] (U+000 'Null'),因为任何不能用于表示字符的整数都可能给出 null 结果。CharFromInt(55300)
返回 [null],因为任何当前不代表字符的整数都将不能按正常字体呈现。
CharToInt(s)
:返回与输入 Unicode® 字符 s 相匹配的数字。
CharToInt("B")
返回 66(U+0042“拉丁大写字母 B”)。CharToInt("©")
返回 169(U+00A9“版权符号”)。CharToInt("Я")
返回 1071(U+042F“西里尔大写字母 YA”)。CharToInt()
返回 127944(U+1F3C8“美式足球”)。
ConvertFromCodePage(s, codePage)
:将文本从代码页转换为 Unicode。如需详细了解代码页,请参阅代码页文档。
ConvertToCodePage(s, codePage)
:将文本从 Unicode® 编码转换为特定代码页。要详细了解代码页,请访问代码页文档。
HexToNumber(x):将十六进制字符串转换为数字(限制为 64 位)。如果有 64 位、16 个十六进制字符,并且设置了前导位,则结果为负数。
HexToNumber("7FFFFFFFFFFFFFFA")
返回 9223372036854775802。HexToNumber("FFFFFFFFFFFFFFFA")
返回 -6。HexToNumber("FFFFFFFFFFFFFFFB")
返回 -5。
IntToBin(x)
:将 x 转换为二进制字符串。
IntToHex(x)
:将 x 转换为十六进制字符串。
ToDegrees(x)
:通过 (x)rad × 180/π 计算将数值弧度值 (x) 转换为度数。请注意,x 必须是一个数值,不能包含任何弧度符号 (rad)。
TODEGREES(0)
返回 0。TODEGREES(1)
返回 57.29578 (1 * 180/π)。TODEGREES(Null)
返回 Null。TODEGREES(2.5)
返回 143.239449 (2.5 * 180/π)。
ToNumber(x, [bIgnoreErrors], [keepNulls], [decimalSeparator])
:将字符串 (x) 转换为数字。ToNumber 接受可解释为科学记数法双精度的字符串。ToNumber 接受可解释为双精度科学计数法的字符串。默认情况下,句点用作小数分隔符。如果有的话,在小数分隔符之前(而非之后),所有可能的千位分隔符都会被删除,如:空格、逗号、句号和撇号。写出来是这样的:"123 456'789.012345"。
如果输入字符串看起来像整数并且在范围内,ToNumber 可以返回精度为 64 位的整数值。
ToNumber 从字符串首位对其求值,并在遇到非数字值(忽略逗号、句点、空格和撇号)时停止。
例如,字符串“June 2022”会返回 0 或 [Null](具体取决于配置),而“2022 June”会返回 2022。
bIgnoreErrors
(默认)0 或 false 报告转换错误消息。
1 或 true 忽略转换错误。
keepNulls
(默认)0 或 false 将非数字值(包括 null)转换为零。
1 或 true 将非数值转换为 null。
decimalSeparator
:传入的字符串的小数分隔符。(默认)“.”将句点指定为小数分隔符。
"," 将逗号指定为小数分隔符。
decimalSeparator
参数会忽略传入的字符串的任何指定千位分隔符(空格、句点、逗号或撇号)。
ToNumber("878")
将字符串 878 作为数字返回。ToNumber("4.256411411E9")
返回数字 4256411411.0。ToNumber("9223372036854775807")
返回 9223372036854775807。但是,ToNumber("9.223372036854774273e18")
会返回一个双精度值,该值将失去精度并四舍五入为 9223372036854775808。ToNumber("Number", "false")
返回 0,并显示转换错误:TONUMBER:数字在转换过程中丢失了信息。ToNumber("Number", 0, 0)
返回 0,并显示转换错误:TONUMBER:数字在转换过程中丢失了信息。ToNumber("Number", 1, 0)
返回 0,并且没有转换错误。ToNumber("Number", 1, 1)
返回 [Null],并且没有转换错误。ToNumber("123456,789", 1, 1, ",")
返回数字 123456.789。ToNumber("123.456,789", 1, 1, ",")
返回数字 123456.789。这是因为,当句号出现在通过decimalSeparator
指定的小数分隔符之前时,它会被解释为千位分隔符。ToNumber("June 2022")
返回 0。该函数立即遇到一个非数字值并转换为 0。ToNumber("2022 June")
返回数字 2022。当该函数遇到非数字值(June 中的 J)时,会停止。ToNumber("6/1/2022")
返回数字 6。当该函数遇到非数字值 / 时,会停止。ToNumber("2022 5:00:00")
返回数字 20225。当该函数遇到 5 后面的非数字值 : 时,会停止。小数分隔符前的空格将被忽略。
ToRadians(x)
:通过 (x)° × π/180 计算,将数值度数值 (x) 转换为弧度值。请注意,x 必须是数值,不能包含度数符号 (°)。
TORADIANS(0)
返回 0 (0 * π/180)。TORADIANS(1)
返回 0.017453 (1 * π/180)。TORADIANS(5)
返回 0.087266 (5 * π/180)。TORADIANS(2.5)
返回 0.043633 (2.5 * π/180)。
ToString(x, [numDec], [addThousandsSeparator], [decimalSeparator])
:使用小数位数参数 numDec
* 将数值参数 (x) 转换为字符串。默认选项使用句点作为小数分隔符。ToString 以不同的方式处理 Int64 值,以免在转换过程中损失精度。ToString(value, 0, 1) 使用 value=18014398509481983 精确得到 18,014,398,509,481,983。
*numDec
参数的最大值为 100。
addThousandsSeparator
(默认)
0
会格式化数字字符串,不带千位分隔符。1
格式化字符串,带千位分隔符。默认情况下,千位分隔符为逗号,除非decimalSeparator
指定用 “,”,在这种情况下,千位分隔符为句点。"," 将逗号指定为千位分隔符。
"." 将句点指定为千位分隔符。
" " 将空格指定为千位分隔符。
"'"将撇号指定为千位分隔符。
decimalSeparator
(默认)“.”将句点指定为小数分隔符。
"," 将逗号指定为小数分隔符。
ToString(10, 0)
返回字符串 10。ToString(10.4, 2)
返回字符串 10,40。ToString(100.4, 2)
返回字符串 100,40。ToString(1000.4, 2, 1)
返回字符串 1,000.40。ToString(123456.789, 3, 1, ",")
返回字符串 123.456,789。ToString(123456.789, 3, 0, ",")
返回字符串 123456,789。ToString(1234567.89, 2, ".", ",")
返回字符串 1.234.567,89。ToString(1234567.89, 2, " ", ",")
返回字符串 1 234 567,89。ToString(1234567.89, 2, "'", ",")
返回字符串 1'234'567,89。
UnicodeNormalize(String, Form)
:将所提供字符串中的文本数据转换为标准化的 Unicode 形式。使用所需的形式参数(不区分大小写)定义标准化形式。您必须手动输入以下标准化形式选项之一(该参数无法通过上游字段填充)。
标准化有助于确保同一文本的不同表示形式得到同等处理。它能减少歧义,并简化搜索、排序和比较等文本处理任务。在文本可能来自不同来源或由采用不同编码标准的不同系统处理的环境中,这一点尤为重要。
String
:您需要标准化的字符串。Form
:用于标准化字符串的选项。以下是可接受的标准化形式(需要字符串格式和引号):NFC(标准化形式规范组合):NFC 尽可能将文本中的字符和字符序列组合为单一的预组合形式。这种形式通常用于数据交换和存储。
NFD(标准化形式规范分解):NFD 将字符和字符序列分解为基本字符和组合字符。这种形式可用于搜索和比较文本等任务。
NFKC(标准化形式兼容性组合):NFKC 首先应用兼容性分解,然后尽可能将字符和字符序列组合为单一的预组合形式。这种形式通常用于兼容和标准化旧数据。
NFKD(标准化形式兼容性分解):NFKD 对字符和字符序列进行兼容性分解,将其分解为其基本字符和组合字符。这种形式对于兼容性和标准化也很有用。
UnicodeNormalize("i⁹","NFKD")
返回 i9。UnicodeNormalize("¼","NFKC")
返回 1/4。UnicodeNormalize("㌄","NFC")
返回 ㌄。UnicodeNormalize("㌄","NFKC")
返回 イニング。