字符串函数

阅读(1177) 标签: 字符串函数,

本部分介绍了报表中常用字符串函数的函数说明、语法、参数说明、返回值、选项以及示例。

fill()

函数说明:

获得ns拼成的字符串

相关函数:space()  产生一个空串

语法:

fill(s, n)

参数说明:

s

用于拼成新串的源串

n

新串中包含源串的个数

返回值:

字符型

示例:

1fill("1 ",10)  返回:"1 1 1 1 1 1 1 1 1 1 "

2fill("a b",10)  返回:"a ba ba ba ba ba ba ba ba ba b"

left()

函数说明:

获得源字符串string左边的子串, 其长度为n.

相关函数:mid()  获得源字符串中间的子串

right()  获得源字符串右边的子串

语法:

left(string, n)

参数说明:

string

获得子串的源串

n

获得子串的长度

返回值:

字符型

示例:

1left("abcdefg",3)  返回:"abc"

len()

函数说明:

计算字符串s的长度

语法:

len(s)

参数说明:

s

待计算长度的字符串

返回值:

整数

示例:

1len("adfg")  返回4

2len("  abd  ")  返回7 

like()

函数说明:

判断字符串是否匹配格式串(*匹配0个或多个字符,?匹配单个字符),可以通过转义符匹配"*", 例如:like ("abc*123", "abc\*") 结果为true.

语法:

like( stringExp, formatExp)

参数说明:

stringExp

字符串的表达式

formatExp

格式串的表达式

返回值:

布尔型

选项:

@c

表示匹配时忽略大小写,否则大小写敏感

示例:

1like( "abc123", "abc*" )  返回:true

2like( "abc123", "abc1?3" )  返回:true

3like( "abc123", "abc*34" )  返回:false

4like( "abc123", "ABC*" )  返回:false

5like("abc*123", "abc\*")  返回:true

6like@c("abc123", "ABC*")  返回:true

link()

函数说明:

生成一个url

语法:

link(serviceName{,jspArgNames,jspArgValues{,reportArgNames,reportArgValues}}) 

参数说明:

serviceName

服务名称

jspArgNames jsp

参数名称数组,可为空,元素类型需为字符串型

jspArgValues jsp

参数值数组,需与jspArgNames元素个数相同

reportArgNames

报表参数名称数组,可为空,元素类型需为字符串型

reportArgValues

报表参数值数组,需与reportArgNames元素个数相同

返回值:

字符串型

示例:

1link("ServiceName",list("jspArg1","jspArg2"), list("value1",2),"count",5)

返回ServiceName?jasArg1=value1&jspArg2=2&params=count=5

lower()

函数说明:

将字符串转成小写

相关函数:upper()  把字符串转成大写

wordcap()  将字符串每一个单词的首字母大写

语法:

lower(s)

参数说明:

s

待转成小写的字符串

返回值:

字符型

示例:

1lower("ABCdef")  返回:"abcdef"

2lower("defABC")  返回:"defabc"

mid()

函数说明:

返回字符串s中从start位置起长度为len的子串

相关函数:left()  获得源字符串左边的子串

right()  获得源字符串右边的子串

语法:

mid(s, start{, end})

参数说明:

s

待获得子串的源串

start

获得子串的起始位置

end

获得子串的结束位置,缺省为源串的长度

返回值:

字符串型

示例:

1mid("abcde",1)  返回:abcde

2mid("abcde",1,2)  返回:ab

3mid("abcde",3)  返回:cde

pos()

函数说明:

查找母串中子串的位置找不到返回null

语法:

pos(s1, s2{, begin})

参数说明:

s1

待查找子串的母串

s2

被查找的子串

begin

查找的起始位置,缺省为1

选项:

@z

begin开始往前查找,缺省从begin开始往后查找

返回值:

整数

示例:

1pos("abcdef","def")  返回:4

2pos("abcdefdef","def",5)  返回:7

3pos("abcdef","defa")  返回:null

4pos@z("abcdeffdef ","def",7) 返回:4

replace()

函数说明:

修改源字符串的子串

语法:

replace( src,a,b)

参数说明:

src

源字符串

a

源字符串的子字符串

b

目标子字符串

返回值:

替换后的字符串

选项:

@q

引号里的字符不需要进行替换

示例:

1replace("abc'abc'def","a","China")  返回:"Chinabc'Chinabc'def"

2replace ("abc'abc'def","a","China")  返回:"Chinabc'Chinabc'def"

3replace@q ("abc'abc'def","a","China")  返回:"Chinabc'abc'def"

right()

函数说明:

获得字符串s右边长度为n的子串

相关函数:left()   获得源字符串左边的子串

mid()  获得源字符串中间的子串

语法:

right(s, n)

参数说明:

s

待获得子串的源串

n

获得子串的长度

返回值:

字符串型

示例:

1right("abced",2)  返回:"ed"

rmquote()

函数说明:

删除表达式里的转义符和最外层引号,包括单引号和双引号

语法:

rmquote(exp)

参数说明:

exp

表达式

返回值:

字符串

示例:

1rmquote(arg1)  返回:s'd'sdwewe,变量arg1的值为"s'd'sd\nwewe"

space()

函数说明:

产生一个空串

相关函数:fill()  获得ns拼成的字符串

语法:

space(n)

参数说明:

n

生成空串的长度

返回值:

字符串型,获得n个空格拼成的字符串

示例:

1space(5)  返回:"  "

split()

函数说明:

将字符串按分割符分割成多个子串

语法:

split( srcExp,sepExp)

参数说明:

srcExp

待分割的字符串表达式

sepExp

分隔符表达式

返回值:

分割后的字符串列表

选项:

@q

解析引号、括号里的分隔符,缺省不解析

@a

保留子串左右两边的空串,缺省去掉子串左右两边的空串

示例:

1split("ab;cd;ef;tg;tt",";")

返回数组:["ab","cd","ef","tg","tt"]

2split("ab;c'd;e'f;tg;tt",";")

返回数组:["ab","c'd;e'f","tg","tt"] 不解析引号里的分隔符

3split("ab;c[d;e]f;tg;tt",";")

返回数组:["ab","c[d;e]f","tg","tt"] 不解析括号里的分隔符

4split@q("ab;c'd;e'f;tg;tt",";")

返回数组:["ab","c'd","e'f","tg","tt"] 解析引号里的分隔符

5split@q("ab;c[d;e]f;tg;tt",";")

返回数组:["ab","c[d","e]f","tg","tt"] 解析括号里的分隔符

6split@a(" ab ,cd,ef,  tg,tt  ",",")

返回数组:[" ab ","cd","ef","  tg","tt  "] 保留子串左右两边的空串

trim()

函数说明:

去掉字符串左右的空串

语法:

trim(s)

参数说明:

s

待去掉左右空串的源串

返回值:

字符串型

选项:

@l

去掉字符串左边的空格,参数为字母l

@r

去掉字符串s右边的空格

 

缺省为同时去掉左右两边的空串去掉

示例:

1trim("  abc  ")  返回:"abc"

2trim("  a  bc  ")  返回:"a  bc"

3trim@l(" def abc ")  返回: "def abc "

4trim@r(" abc def ")  返回:" abc def"

upper()

函数说明:

把字符串转成大写

相关函数:lower()  把字符串转成小写

wordcap()   将字符串每一个单词的首字母大写

语法:

upper(s)

参数说明:

s

待转成大写的源串

返回值:

字符串型

示例:

1upper("ABCdef")  返回:"ABCDEF"

2upper("abcDEF")  返回:"ABCDEF"

urlencode()

函数说明:

将字符串按指定名称字符集编码

语法:

urlencode(s, enc)

参数说明:

s

待编码的字符串

enc

指定字符集名称,要求是字符串,如"utf8"

返回值:

字符串型

示例:

1urlencode ("哥哥","utf8")  返回:"%E5%93%A5%E5%93%A5"

wordcap()

函数说明:

将字符串每一个单词的首字母大写

相关函数:upper()  把字符串转成大写

lower()   把字符串转成小写

语法:

wordcap(s)

参数说明:

s

需要将单词首字母大写的源串

返回值:

字符串型

示例:

1wordcap("I love my country")  返回:"I Love My Country"

2wordcap("she is beautiful")  返回:"She Is Beautiful"