BI函数字典第三期——字符串函数

16 篇文章 0 订阅
6 篇文章 0 订阅

1     CHAR

定义:charI

将一数字格式化为指定格式后输出

参数:

I:用整数表示的字符的ASCII码

示例:

根据ASCII码返回单个字符的串,返回值为单个字符

CHAR(65)="A"

2     CLEAN

定义:CLEAN(C)

将串中的不可见字符去掉。

参数:

C:指定的字符串

示例:

去掉不可见字符后的串,返回值为字符串

clean(" 我 是 中国人 ")="我是中国人"

3     CODE

定义:CODE(C)

返回串中第一个字符的ASCII码

参数:

    C:指定的字符串

示例:

返回指定串中第一个字符的ASCII码,返回值为整数

CODE(“abc”)=97

4     FIND

定义:FIND(C1,C2)

在串C2中查找子串C1,并返回子串第一次出现的位置,(0代表第一个字符);
如果没找到,则返回-1。与Search不同,FIND区分大小写。

参数:

    C1,C2均表示字符串,其中C1表示要查找的子串

示例:

在串C2中查找子串C1,并返回子串第一次出现的位置,返回值为整数

FIND("AB","AAABBBBB")=2
FIND("Ab","AAABBBBB")=-1

5     FORMAT

定义:FORMAT(CN)

将一数字格式化为指定格式后输出

参数:

C:需要格式化的字符串的格式,完整的格式为"%0:,6.3f",各部分说明见示例。

N:要格式化为指定格式的数值

示例:

将一数字格式化为指定格式,返回值为字符串或数值

format('%0:,6.3f',1245.5634)=1245.563 将浮点数num转换为字符串,并指定小数点后位数

详细说明

format函数格式化数字输出的操作符由6部分组成:

1、%:是起始控制符,表示从此处开始的字符串为格式化控制参数

2、0::表示控制格式化第几个数,此处"0:"表示控制第一个数,例如"5:"表示控制第5个数。此操作符也可以不写,系统将采用默认模式,默认的是从左往右顺序格式化

3、,:匹配","和",",表示需要控制格式化输出中显示千分符,如果不写","和","则表示不显示千分符

4、6:表示需要确保输出的位数为6位,位数不足前面以0补足(该控制一般应只对整数使用)。如对于数字1则会输出为000001(特别的,对于小数,则表示控制整个数的位数,最好不要在控制小数时使用此操作符)

5、.3: 表示控制小数位输出的个数,如.3表示显示3位小数,对于太大的数,小数位尽量不要控制

6、f': 匹配字符,该字符为类型转换字符,目前支持"d"(表示整数)"f"(表示小数)"s"(表示字符串),使用此操作符表示将输出数转换为指定类型输出。
例如:

函数 输出 说明
format('%.3f',1.0)1.000 控制小数位数 
format('%3d',1) 0001 整数位不足补0 
format('%,f',1111111111111.1111) 1,111,111,111,111.111 显示千分符 
format('%d',12.5) 13 小数转换为整数(四舍五入)
format('%0:3d %1:.2f',12.5,10.4)0013 10.40 多数字控制(从0开始,"0:"表示控制第一个数字) 
format('%5.3f',1.0) 01.000 最好不要控制小数位数的同时控制总的位数 
format('%.3f',123234234234325345.5634)123234234234325344.000 太大数时,小数可能不准

6     LEFT

定义:LEFT(C,I)

返回一字符串左边I个字符组成的子串,其中I为整数

参数:

C:指定的字符串

I:要返回的字符的个数,为整数

示例:

返回一字符串左边I个字符组成的子串,返回值为字符串

LEFT("ABCDEF",3)="ABC"

7     LEN

定义:LEN(C)

返回串的长度。如果字符是汉字,则每个汉字的长度为1。

参数:

C:指定的字符串

示例:

返回串的长度,返回值为整数

LEN("ABCDE")=5 LEN("武汉")=2

8     LOWER

定义:LOWER(C)

将串变成小写

参数:

C:指定的字符串

示例:

将串变成小写,返回值为字符串

LOWER("AbCd1")="abcd1"

9     IN

定义:IN(C1C2)

判断C1是否是C2的子串

参数:

C1、C2是二个字符串

示例:

判断C1是否是C2的子串,如果C1是C2的子串,则返回TRUE

In("00","00 01 02")=TRUE

10  MID

定义:MID(strI, n)

返回串中从I开始的n个字符的子串。其中:I,n都为整数。串的基数n从0开始。

参数:

Str: 指定的字符串

I: 返回的子串的起始位置,从0开始

N: 返回的子串中字符的数据量

示例:

返回串中从I开始的n个字符的子串。其中:I,n都为整数

MID("ABCDEF",2,3)="CDE"

11  MT

定义:MT(C1,C2)

判断C1与C2是否模式匹配

参数:

C1: 参数C1为要判断的字符串

C2: 参数C2为模式匹配的正则表达式,*表示任意字符串,?表示任意单个字符。如果有多种模式,可以用逗号分割。

示例:

判断C1与C2是否模式匹配,匹配返回TRUE,否则返回FALSE

12  REPLACE

定义:REPLACE(C1,C2,I1,I2)

将串C1从I1开始的I2个字符替换成新串C2。

参数:

C1、C2: 指定的字符串,其中C2为要替换的子串

N1: 指字符串的起始位置,串的起始位置从0算起,为整数

N2: 指串C1中要替换掉的字符的个数,为整数

示例:

将串C1从I1开始的I2个字符替换成新串C2

13  REPT

定义:REPT(C,I)

将一字符重复若干次,变成一新串。

参数:

C: 指定的字符串

I: 串重复的次数,为整数

示例:

将一串重复若干次,变成一新串

REPT("A",5)="AAAAA"

14  Right

定义:right(C,I)

返回一字符串右边I个字符组成的子串,其中I为整数。

参数:

C: 指定的字符串

I: 要返回的字符的个数,为整数

示例:

返回一字符串右边I个字符组成的子串,返回值为字符串

RIGHT("ABCDEF",3)="DEF"

15  RMBDX

定义:rmbdx(N)

将数值转变成大写人民币串。

参数:

N: 要转换的数值

示例:

将指定的数值转变成大写人民币串

RMBDX(1203.45)="壹仟贰佰零叁元肆角伍分整"

16  Same

定义:same(C1,C2)

判断两串是否相等,不区分大小写

参数:

C1、C2: 要比较的两个字符串

示例:

判断两串是否相等,不区分大小写。如果相等,返回TRUE,否则返回FALSE

SAME("aBc","ABC")=TRUE

17  Search

定义:searchC1,C2

在串C2中查找子串C1,并返回子串第一次出现的位置,(0代表第一个字符)。如果没找到,则返回-1。与Find不同,SEARCH不区分大小写。

参数:

C1、C2: 两个字符串,C1为要查找的子串

示例:

在串C2中查找子串C1,并返回子串第一次出现的位置。返回值为整数

SEARCH("AB","AAABBBBB")=2SEARCH("Ab","AAABBBBB")=2

18  STR

定义: STR(N)

    将数值变成串

参数:

N:要转换成串的数值

示例:

将数值变成串

STR(1)="1"

19  Strcat

定义:STRCAT(C1,C2,…)

将所有串合并。该合并不受255长度限制

参数:

C1、C2…要合并的字符串

示例:

将所有串合并后,返回一字符串

STRCAT("AB"," CD"," EF")="AB CDEF"

20  Substitute

定义:substitutestr,oldsub,newsub

将串中的oldsub子串换成另一newsub子串。不管子串出现多少次,全部换掉

参数:

Str: 指定的字符串

Oldsub: 字符串将要替换的子串

Newsub: 用于替换的子串

示例:

将串中的oldsub子串换成另一newsub子串

Substitute("AbCdEFCdEG","CdE","123")="Ab123F123G"

21  Trim

定义:trim(c)

将串中的头尾空格及TAB键去掉

参数:

C: 指定的字符串

示例:

将串中的头尾空格及TAB键去掉

TRIM(" AB C ")="AB C"

22  value

定义:value(C)

将字符串转换成数值。如果转换不成功,则返回Err

参数:

C: 要转换的字符串

示例:

将字符串转换成数值

VALUE("12.34")=12.34

23  upper

定义:upper(C)

将串变成大写

参数:

C: 要变成大写的字符串

示例:

将下面的串变成大写

UPPER("AbCd1")="ABCD1"

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值