Arbutus官网(中国)
当前位置: 主页 > 资源中心 > 文档 >

Arbutus-函数专题-常用函数介绍

时间:2015-07-06 15:19来源:未知 作者:admin 点击:
substring() 函数 SUBSTRING( ) 返回字符表达式或域值的子串。使用 SUBSTRING( ) 可隔离字符表达式或域值中的某一部分。 函数格式 SUBSTRING(string, start, length) string 为字符表达式或字符域。 start 指定 string 中的开始位置。 length 指定结果的长度
  • substring()函数
 SUBSTRING( ) 返回字符表达式或域值的子串。使用 SUBSTRING( ) 可隔离字符表达式或域值中的某一部分。
 
函数格式
SUBSTRING(string, start, length)
string 为字符表达式或字符域。
start 指定 string 中的开始位置。
length 指定结果的长度(以字符数为单位)。
 
    此外,SUBSTRING函数可以应用到整条记录中,格式如下:
SUBSTRING(RECORD, start, length)
示例
  1. 从字符串”ABCDEF”中截取”BCD”
SUBSTRING("ABCDEF", 2, 3) = "BCD"
  1. 要从包含日期格式“MM/DD/YYYY” 的字符域中提取年份,请指定:
SUBSTRING(DATE, 7, 4)
  1. 要从记录中一个为Line字符域第一次出现”P.O. Box”开始,提取50位
SUBSTR(RECORD,AT(1,”P.O. Box”,Line),50)
 
  • Split()函数
 SPLIT( ) 将字符串分为由字符(如空格或逗号)分隔的段,并返回指定段。
 
函数格式
SPLIT("character_string", "field_separator", segment_number)
character_string 指定源字符串,可以是域或字符串。除非引用域,否则请用引号将字符串括起来。可以使用单引号或双引号将字符串括起来。
field_separator 指定用于将分隔文件中的域分隔开的字符或字符串。用引号将分隔符括起来。
segment 指定要返回的段。例如,要指定第四段,请输入 4。
示例
  1. SPLIT("abc,def,ghijkl", ",", 2)
ARBUTUS 返回 def。
  1. SPLIT("abc,def,ghijkl", ",", 3)
ARBUTUS 返回 ghijkl。
  1. SPLIT("abc/*def/*ghijkl", "/*", 3)
ARBUTUS 返回 ghijkl。
  1. SPLIT("Jane Doe", " ", 2)
ARBUTUS 返回 Doe。
  1. SPLIT("/abc/efg/", "/", 2)
ARBUTUS 返回 abc。
  1. SPLIT("abc,def,,ghi", ",", 3)
由于字符串的第三段为空,ARBUTUS 返回空白。
  1. SPLIT("1234,*Vancouver, BC*,Canada", ",", 2, "*")
ARBUTUS 返回 Vancouver,BC。
  1. SPLIT("abc,def,,ghi",",",-3) = "def"
ARBUTUS 返回 def
  1. SPLIT("C:\Fraud.Data\test.fil",".",-1) = "fil"
ARBUTUS 返回 fil
 
  • Include()函数
 INCLUDE( ) 返回可变长度字符串,结果中只包括指定字符。
INCLUDE( ) 与 EXCLUDE( ) 函数正好相反。
 
函数格式
INCLUDE(string, characters_to_include)
INCLUDE( ) 返回仅由 string 中出现在 characters_to_include 内的字符组成的字符串,其顺序与它们在 string 中出现的顺序相同。
示例
  1. 只保留字符串"123 Main Street"中的数字:
INCLUDE("123 Main Street", "0123456789") = "123"
  1. 要创建只保留 Abc 域中的数字的域,请指定:
INCLUDE(Abc, "0123456789")
     注:
可以用0~9代替0123456789,A~Z代替所有大写英文字母,a~z代替所有小写英文字母。
 
  • Exclude()函数
 EXCLUDE( ) 返回从其中排除了所指定字符的可变长度字符串。
EXCLUDE( ) 与 INCLUDE( ) 函数正好相反。
 
函数格式
EXCLUDE(string, characters_to_exclude)
EXCLUDE( ) 返回一个字符串,其中包含在 string 中排除掉 characters_to_exclude 中的所有字符后剩余的字符并按原有的顺序显示。
示例
  1. 删除字符串"123 any street"中的数字:
EXCLUDE("123 any street", "0123456789")=" any street"
  1. 要从 Prodno 域删除正斜杠和数字符号,请指定:
EXCLUDE(Prodno, "/#")
注:
可以用0~9代替0123456789,A~Z代替所有大写英文字母,a~z代替所有小写英文字母。
 
  • Alltrim()函数
 ALLTRIM( ) 返回除去了前导空格和结尾空格的可变长度字符串。但字符串内部的空格不会除去。
ALLTRIM( ) 与 LTRIM( )(除去前导空格)和 TRIM( )(除去结尾空格)相似。
 
函数格式
ALLTRIM(string)
 
示例
ALLTRIM(" abc ") = "abc"
ALLTRIM(" a bc ") = "a bc"
 
  • Ctod()函数
CTOD( ) 将字符或数值表达式转换成有效的日期表达式。
 
函数格式 
CTOD(field <,"date_format">)
 
如果第一个参数是数值,那么它会在转换之前自动转换成字符串。
示例
所有这些表达式返回的值均为 1995 年 12 月 31 日:
CTOD("951231")
CTOD(311295,"DDMMYY")
CTOD("19951231")
CTOD("951231", "YYMMDD")
CTOD("311295", "DDMMYY")
CTOD("31/12/1995", "DD/MM/YYYY")
 
  • Date()函数
DATE( ) 将日期表达式、当前系统日期或日期域值转换为用字符串表示的日期。
当您需要将当前日期作为字符串显示时,请使用 DATE( )。
 
函数格式 
DATE(<date>)
若不提供任何参数,则将转换系统日期。
日期将以 SET DATE 指定的格式返回 12 个字节的字符串。如果 SET DATE 指定的格式短于 12 个字节,那么返回的值会用空格填充。
示例
如果使用默认日期设置 MM/DD/YY,则系统日期 1995 年 11 月 22 日和 Date 域值 1995 年 12 月 31 日表示为:
DATE( ) = "11/22/95 "
DATE(Date) = "12/31/95 "
DATE(DATE,”YYYY-MM-DD”) = “1995-12-31”
 
  • Value()函数
  VALUE( ) 将字符表达式或域转换为等效的数值。
若需要将字符表达式或域值转换为数字值以用于 ARBUTUS 命令,可使用 VALUE( )。
 
函数格式
VALUE(C,# <,alternate_decimal_character>)
C为要转换的字符串,#为小数位数,alternate_decimal_character为其他地区的小数点形式,因各个地区的小数点有的是用逗号表示,有的是用原点表示。
示例
  1. VALUE("123.4-", 3) = -123.400
  2. VALUE("$123,456", 2) = 123456.00
  3. VALUE("77.45CR", 2) = -77.45
  4. VALUE(" (123,456.78)", 0) = -123457
  5. VALUE("123.4-",2,",") = -123,40
 
  • String()函数
  STRING( ) 将数值表达式或域值转换成字符串。
使用 STRING( ) 可将数值表达式或域值转换成字符格式,以便在“汇总”命令或“分类”命令等 ARBUTUS 命令中用作关键字域。
函数格式
STRING(number, length<,format>)
STRING( ) 将数值表达式或域值转换成 length 指定的长度的字符串。
示例
  1. STRING(125.2,6) = " 125.2"
  2. STRING(-125.2,9, "(9,999.99)") = " (125.20)"
  3. STRING(-125.2,5) = "-125."
 
  • Recno()函数
RECNO( ) 返回当前逻辑记录号(从 1 开始计数)。
使用 RECNO( ) 可向表中输出记录号,或确定表内特定记录的相对位置。
 
函数格式
RECNO( )
RECNO( ) 返回当前逻辑记录号。如果不能为表建立索引,RECNO( ) 将从值 1 开始对表中的每条记录以 1 为增量编号。逻辑记录号和物理记录号相同。
如果可以为表建立索引,RECNO( ) 的运算方式与上面相似,但排序是按逻辑顺序而非物理顺序。如果使用 SEEK 或 FIND 命令,则在执行这些命令之后,记录号将重置为 1。
示例
对于记录 99:
RECNO( ) = 99 (责任编辑:admin)
------分隔线----------------------------