UReport2 函數(shù)

2023-01-05 16:02 更新
UReport2教學(xué)視頻http://pan.baidu.com/s/1boWTxF5,密碼:98hj

       在前一小節(jié)中,我們介紹了表達式,實際上函數(shù)也是表達式的一種。在UReport2當中提供了大量的內(nèi)置函數(shù),通過這些內(nèi)置函數(shù),可以實現(xiàn)各種各樣的報表計算功能。函數(shù)語法格式如下:

      函數(shù)名([表達式,表達式...])

      下面我們就來逐個介紹UReport2內(nèi)置的函數(shù)。

常用函數(shù)

count函數(shù)(統(tǒng)計數(shù)量)

        count函數(shù)是對給定的表達式在計算后對象數(shù)量進行統(tǒng)計。

示例
說明
count(C1,C2) 統(tǒng)計相對當前所在單元格,目標C1單元格以及C2單元格加在一起的數(shù)量
count(C1) 統(tǒng)計相對當前所在單元格,目標C1單元格數(shù)量
count(C1{age>20},C2{salary>2000 and degree=='本科'}) 統(tǒng)計相對當前所在單元格,目標C1單元格綁定對象的age屬性大于20的C1單元格以及C2單元格綁定對象的salary屬性大于2000同時degree屬性等于本科的單元格數(shù)量
count(C1{age>20}) 統(tǒng)計相對當前所在單元格,目標C1單元格綁定對象的age屬性大于20的C1單元格數(shù)量

sum函數(shù)(累加)

       sum函數(shù)是對給定的表達式在計算后值進行累加,sum函數(shù)要求各個表達式計算后的值必須是數(shù)字,否則將產(chǎn)生錯誤。

示例
說明
sum(C1) 相對當前單元格,取到所有C1單元格值進行累加
sum(C1{age>20}) 相對當前單元格,取到所有綁定對象屬性age大于20的C1單元格值進行累加
sum(C1,C2) 相對當前單元格,取到所有C1和C2單元格的值進行累加
sum(C1{age>20},C2{salary>2000 and degree=='本科'}) 相對當前單元格,取到所有綁定對象屬性age大于20的C1單元格值以及綁定對象屬性salary大于2000且degree屬性等于本科的C2單元格的值進行累加

avg函數(shù)(求平均值)

       avg函數(shù)是對給定的表達式在計算后值求平均值,avg函數(shù)要求各個表達式計算后的值必須是數(shù)字,否則將產(chǎn)生錯誤。

示例
說明
avg(C1) 相對當前單元格,求C1單元格的平均值
avg(C1{age>20}) 相對當前單元格,取到綁定對象屬性age大于20的C1單元格值的平均值
avg(C1,C2) 相對當前單元格,求C1和C2單元格的平均值
avg(C1{age>20},C2{salary>2000 and degree=='本科'}) 相對當前單元格,取到所有綁定對象屬性age大于20的C1單元格值以及綁定對象屬性salary大于2000且degree屬性等于本科的C2單元格的值進行求平均值

max函數(shù)(求最大值)

       max函數(shù)是對給定的表達式在計算后值求其中的最大值,max函數(shù)要求各個表達式計算后的值必須是數(shù)字,否則將產(chǎn)生錯誤。

示例
說明
max(C1) 相對當前單元格,求C1單元格的最大值
max(C1{age>20}) 相對當前單元格,取到綁定對象屬性age大于20的C1單元格值的最大值
max(C1,C2) 相對當前單元格,求C1和C2單元格的最大值
max(C1{age>20},C2{salary>2000 and degree=='本科'}) 相對當前單元格,取到所有綁定對象屬性age大于20的C1單元格值以及綁定對象屬性salary大于2000且degree屬性等于本科的C2單元格的值進行求最大值

min函數(shù)(求最小值)

       min函數(shù)是對給定的表達式在計算后值求其中的最小值,min函數(shù)要求各個表達式計算后的值必須是數(shù)字,否則將產(chǎn)生錯誤。

示例
說明
min(C1) 相對當前單元格,求C1單元格的最小值
min(C1{age>20}) 相對當前單元格,取到綁定對象屬性age大于20的C1單元格值的最小值
min(C1,C2) 相對當前單元格,求C1和C2單元格的最小值
min(C1{age>20},C2{salary>2000 and degree=='本科'}) 相對當前單元格,取到所有綁定對象屬性age大于20的C1單元格值以及綁定對象屬性salary大于2000且degree屬性等于本科的C2單元格的值進行求最小值

row函數(shù)(取行號)

       取當前單元格所在行的行號,這個函數(shù)比較簡單,它沒有參數(shù)。

示例
說明
row()  取當前單元格所在行的行號

column函數(shù)(取列號)

      取當前單元格所在列的列號,這個函數(shù)比較簡單,它沒有參數(shù)。

示例
說明
column()  取當前單元格所在列的列號

order函數(shù)(排序)

       order函數(shù)需要兩個參數(shù),第一個為要進行排序的對象表達式,第二個是一個布爾值,用來設(shè)置排序方式,true正序,false為倒序。

示例
說明
order(C1,false) 相對當前單元格,取到所有C1單元格值,對這些值進行倒排序,返回排序好的結(jié)果集合
order(C1{age>18},true) 相對當前單元格,取到與C1單元格綁定的對象屬性age值大于18的所有C1單元格值,對這些值進行正排序,返回排序好的結(jié)果集合

list函數(shù)(羅列數(shù)據(jù))

       取到表達式中定義所有數(shù)據(jù),并以集合形式返回。

示例
說明
list(C1) 相對當前單元格,取到所有C1單元格值以集合形式返回
list(C1,C2{age>20}) 相對當前單元格,取到所有C1單元格值及C2單元格中age屬性大于20的所有C2單元格值以集合形式返回

param函數(shù)(取參數(shù))

       param函數(shù)用來獲取外部傳入的參數(shù),它需要一個參數(shù),用于指定要獲取的參數(shù)名稱。

示例
說明
param("deptId") 獲取外部傳入的名為deptId的參數(shù)值
param(C1) 相對于當前單元格,取到C1單元格的值,如果有多個C1單元格則么第一個,然后以這個C1單元格值作為參數(shù)名稱,獲取外部對應(yīng)的參數(shù)值。

emptyparam函數(shù)(判斷參數(shù)是否為空)

       emptyparam函數(shù)用于判斷指定的外部參數(shù)是否為null或空字符串,如果是返回true,否則返回false,該函數(shù)為2.2.3版本新增,如果要使用該函數(shù),請注意您當前使用的ureport版本。

       emptyparam函數(shù)一般用于SQL數(shù)據(jù)集SQL表達式里,比如下面的寫法:

${

   "select * from employee where 1=1 "+ (param("name")!=null && param("name")!="" ? "name=:name" : "")
} 

       上述的SQL判斷采用的是param函數(shù),由于要同時判斷為null以及"",寫起來比較麻煩,如改用emptyparam函數(shù)就簡單多了。

${

   "select * from employee where 1=1 "+ (emptyparam("name")==false ? "and name=:name" : "")
} 

formatdate函數(shù)(格式化日期)

       對給定的日期參數(shù)進行格式化,它至少需要一個參數(shù),第一個參數(shù)是要格式化的日期類型的對象,第二個參數(shù)是可選的,用于定義格式化采用的模式,如不指定則用默認的:yyyy-MM-dd HH:mm:ss來進行格式化。

示例
說明
formatdate(C1) 取到C1單元格值,這個值必須是日期類型,然后按yyyy-MM-dd HH:mm:ss來進行格式化成字符串輸出
formatdate(C1,"yyyyMMdd") 取到C1單元格值,這個值必須是日期類型,然后按yyyyMMdd來進行格式化成字符串輸出

formatnumber函數(shù)(格式化數(shù)字)

       對給定的參數(shù)進行格式化,它至少需要一個參數(shù),第一個參數(shù)是要格式化的數(shù)字對象,要保證這個參數(shù)值取到后可以轉(zhuǎn)換成日期,否則將發(fā)生錯誤;第二個參數(shù)是可選的,用于定義數(shù)字格式化采用的模式,如不定義,則采用默認的#來進行格式化。

示例
說明
formatnumber(C1) 取到C1單元格值,這個值必須可以轉(zhuǎn)換成數(shù)字,然后按#來進行格式化成字符串輸出
formatnumber(C1,"#,###.00") 取到C1單元格值,這個值必須可以轉(zhuǎn)換成數(shù)字,然后按#,###.00來進行格式化成字符串輸出

get函數(shù)(獲取指定位置數(shù)據(jù))

       get函數(shù)是2.1.2版本中新增的,它的作用是獲取數(shù)據(jù)集中指定位置的對象或?qū)ο蟮哪硞€屬性值。get函數(shù)可以有三個參數(shù),第一個為目標集合對象、第二個為數(shù)據(jù)位置、第三個是對象屬性,其中第一個參數(shù)是必須的,后面兩個參數(shù)為可選。

示例
說明
get(ds1.select(employee_name)) 從ds1數(shù)據(jù)集中獲取第1個對象值,并將其返回。第二個位置參數(shù)沒有指定默認取集合第一個對象
get(ds1.select(employee_name),2) 從ds1數(shù)據(jù)集中獲取第2個對象值,并將其返回。
get(ds1.select(employee_name),2,"deptId") 從ds1數(shù)據(jù)集中獲取第2個對象值,并從這個對象里取deptId屬性值并返回。
get(A3,4) 獲取所有A3單元格值,從中取第四個值并返回。

分頁相關(guān)函數(shù)

       所謂分頁相關(guān)函數(shù),是指這些函數(shù)是在分頁的時候進行計算,比如計算當前頁有多少條記錄、當前頁某個單元格值累加后是多少、平均值是多少、最大值是多少等等。

分頁相關(guān)函數(shù)使用一般來說,分頁相關(guān)函數(shù)多用在行類型為“重復(fù)表頭”或“重復(fù)表尾”的行中的單元格里。同時,需要注意的是,分頁相關(guān)函數(shù)只會在分頁預(yù)覽時顯示,這點需要注意。

pcount函數(shù)

       統(tǒng)計當前頁下表達對應(yīng)值的數(shù)目,與count函數(shù)的使用方法基本一致,不同之處在于pcount只會統(tǒng)計當前頁中對應(yīng)的表達式內(nèi)容的數(shù)目。

示例
說明
pcount(C1) 統(tǒng)計當前頁中,C1單元格數(shù)目
pcount(C1,D2{D2>10000}) 統(tǒng)計當前頁中,C1單元格和當前頁中所有D2單元格值大于10000的D2單元格數(shù)目

psum函數(shù)

        將當前頁下表達式對應(yīng)的所有值進行累加,與sum函數(shù)對應(yīng),不同的是psum只針對當前頁。

示例
說明
psum(C1) 將當前頁中,所有C1單元格值進行累加
psum(C1,D2{D2<10000}) 將當前頁中,所有C1單元格值以及值小于10000的D2單元格值累加起來

pmax函數(shù)

       比較當前頁中,表達式對應(yīng)的值,找出其中最大的那個值,與max函數(shù)對應(yīng),只是pmax只針對當前頁。

示例
說明
pmax(C1) 比較當前頁中所有C1單元格值,找出最大值。
pmax(C1,D2,E2{E2>1000}) 比較當前頁中,所有C1、D2以及值大于1000的E2單元格值,找出其中最大的。

pmin函數(shù)

       比較當前頁中,表達式對應(yīng)的值,找出其中最小的那個值,與min函數(shù)對應(yīng),只是pmin只針對當前頁。

示例
說明
pmin(C1) 比較當前頁中所有C1單元格值,找出最小值。
pmin(C1,D2,E2{E2>1000}) 比較當前頁中,所有C1、D2以及值大于1000的E2單元格值,找出其中最小的。

page函數(shù)

       輸出當前所在頁的頁碼,該函數(shù)沒有參數(shù)。

示例
說明
page() 輸出當前所在頁的頁碼

pages函數(shù)

       輸出當前報表一共有多少頁,該函數(shù)沒有參數(shù)。

示例
說明
pages() 輸出當前報表一共有多少頁
pages函數(shù)的使用范圍pages函數(shù)目前僅能在頁眉頁腳中使用

 

數(shù)學(xué)函數(shù)

abs函數(shù)(絕對值)

       求參數(shù)的絕對值,參數(shù)值計算后數(shù)據(jù)類型必須是數(shù)字,否則會報錯。

示例
說明
abs(-233) 求-233絕對值,計算后的值是233
abs(C1) 相對當前單元格,取到C1單元格的值,如果有多個則取第一個值返回其絕對值

ceil函數(shù)(最小值)

       對參數(shù)值取最小值,如果參數(shù)值為小數(shù)將舍棄小數(shù)點后面的小數(shù)部分,參數(shù)值計算后數(shù)據(jù)類型必須是數(shù)字,否則會報錯。

示例
說明
ceil(32.32) 計算后值為32
ceil(C1) 相對當前單元格,取到C1單元格的值,如果有多個則取第一個值返回其最小值

floor函數(shù)(最大值)

      對參數(shù)值取最大值,如果參數(shù)值為小數(shù)將四舍五入小數(shù)點后面的小數(shù)部分,參數(shù)值計算后數(shù)據(jù)類型必須是數(shù)字,否則會報錯。

示例
說明
floor(32.52) 計算后值為33
floor(C1) 相對當前單元格,取到C1單元格的值,如果有多個則取第一個值返回其最大值

chn函數(shù)(數(shù)字轉(zhuǎn)中文)

       將一個數(shù)字轉(zhuǎn)化成中文,參數(shù)值計算后數(shù)據(jù)類型必須是數(shù)字,否則會報錯。

示例
說明
chn(213) 計算后的值為:貳佰壹拾叁
chn(C1) 相對當前單元格,取到C1單元格的值,如果有多個則取第一個值,再轉(zhuǎn)化成中文
chn函數(shù)使用注意事項chn函數(shù)轉(zhuǎn)換數(shù)字即可是整數(shù),也可是小數(shù),如果是小數(shù)支持后面最多兩位小數(shù),如果實際小數(shù)過多,chn函數(shù)會先進行四舍五入,然后再進行轉(zhuǎn)換。

 

rmb函數(shù)(數(shù)字轉(zhuǎn)換為大寫的人民幣金額)

         將一個數(shù)字轉(zhuǎn)換成中文大寫的人民幣金額,參數(shù)值計算后數(shù)據(jù)類型必須是數(shù)字,否則會報錯。

示例
說明
rmb(213) 計算后的值為:貳佰壹拾叁元整
rmb(200.12) 計算后的值為:貳佰元壹角貳分
rmb(C1) 相對當前單元格,取到C1單元格的值,如果有多個則取第一個值,再轉(zhuǎn)化成中文大寫的人民幣金額
rmb函數(shù)使用注意事項rmb函數(shù)轉(zhuǎn)換數(shù)字即可是整數(shù),也可是小數(shù),如果是小數(shù)支持后面最多兩位小數(shù),如果實際小數(shù)過多,rmb函數(shù)會先進行四舍五入,然后再進行轉(zhuǎn)換。

cos函數(shù)(求余弦)

       求參數(shù)的余弦值,參數(shù)值計算后數(shù)據(jù)類型必須是數(shù)字,否則會報錯。

示例
說明
cos (213) 計算后的值為:0.8090276252864301
cos(C1) 相對當前單元格,取到C1單元格的值,如果有多個則取第一個值,再求其余弦值

sin函數(shù)(正弦)

       求參數(shù)的正弦值,參數(shù)值計算后數(shù)據(jù)類型必須是數(shù)字,否則會報錯。

示例
說明
sin(213) 計算后的值為:-0.58777
sin(C1) 相對當前單元格,取到C1單元格的值,如果有多個則取第一個值,再求其正弦值

 

tan函數(shù)(正切)

      求參數(shù)的正切值,參數(shù)值計算后數(shù)據(jù)類型必須是數(shù)字,否則會報錯。

示例
說明
tan(213) 計算后的值為:-0.72651
tan(C1) 相對當前單元格,取到C1單元格的值,如果有多個則取第一個值,再求其正切值

 

exp函數(shù)(方法用于返回自然數(shù)底數(shù)e的參數(shù)次方)

       求參數(shù)的自然數(shù)底數(shù)e的參數(shù)次方,參數(shù)值計算后數(shù)據(jù)類型必須是數(shù)字,否則會報錯。

示例
說明
expr(213) 計算后的值為:3.196867565323994E921
expr(C1) 相對當前單元格,取到C1單元格的值,如果有多個則取第一個值,再求其自然數(shù)底數(shù)e的參數(shù)次方

log10函數(shù)(返回以10為底的對數(shù)值)

       求參數(shù)以10為底的對數(shù)值,參數(shù)值計算后數(shù)據(jù)類型必須是數(shù)字,否則會報錯。

示例
說明
log10(213) 計算后的值為:2.3283796034387376
log10(C1) 相對當前單元格,取到C1單元格的值,如果有多個則取第一個值,再求其以10為底的對數(shù)值

log函數(shù)(自然對數(shù))

       求參數(shù)自然對數(shù)值,參數(shù)值計算后數(shù)據(jù)類型必須是數(shù)字,否則會報錯。

示例
說明
log(213) 計算后的值為:5.3612921657094255
log(C1) 相對當前單元格,取到C1單元格的值,如果有多個則取第一個值,再求其自然對數(shù)值

median函數(shù)(中位數(shù))

        求一組數(shù)據(jù)的中位數(shù),參數(shù)值計算后數(shù)據(jù)類型必須是數(shù)字,否則會報錯。

示例
說明
median(12,42,31) 運行結(jié)果為31
median(C1) 相對當前單元格,取到C1單元格的所有值,再取這些值中位數(shù)
median(C1,C2) 相對當前單元格,取到C1單元格和C2單元格的所有值,再取這些值中位數(shù)

mode函數(shù)(眾數(shù))

        求一組數(shù)據(jù)的眾數(shù),參數(shù)值計算后數(shù)據(jù)類型必須是數(shù)字,否則會報錯。

示例
說明
mode(12,42,3,12) 運行結(jié)果為12
mode(C1) 相對當前單元格,取到C1單元格的所有值,再取這些值眾數(shù)
mode(C1,C2) 相對當前單元格,取到C1單元格和C2單元格的所有值,再取這些值眾數(shù)

vara函數(shù)(方差)

        求一組數(shù)據(jù)的方差,參數(shù)值計算后數(shù)據(jù)類型必須是數(shù)字,否則會報錯。

示例
說明
vara(12,42,3,12) 運行結(jié)果為209.25
vara(C1) 相對當前單元格,取到C1單元格的所有值,再取這些值方差
vara(C1,C2) 相對當前單元格,取到C1單元格和C2單元格的所有值,再取這些值方差

 

stdevp函數(shù)(標準差)

        求一組數(shù)據(jù)的標準差,參數(shù)值計算后數(shù)據(jù)類型必須是數(shù)字,否則會報錯。

示例
說明
stdevp(12,42,3,12) 運行結(jié)果為14.75424
stdevp(C1) 相對當前單元格,取到C1單元格的所有值,再取這些值標準差
stdevp(C1,C2) 相對當前單元格,取到C1單元格和C2單元格的所有值,再取這些值標準差

 

pow函數(shù)(返回第一個參數(shù)的第二個參數(shù)次方)

pow函數(shù)需要兩個參數(shù),第一個為需要計算的數(shù)字或表達式,第二個為具體的次方。

 

示例
說明
pow(3,2) 表示計算3的2次方值,運算后的結(jié)果為9
pow(C1,3) 相對當前單元格,取到C1單元格的值,如果取到的C1單元格有多個,則取第一個,再對其值求3次方

 

random函數(shù)(隨機數(shù))

生成一個隨機數(shù),可以有一個數(shù)字類型的參數(shù)或表達式,如果有參數(shù),那么以這個參數(shù)作為生成隨機數(shù)字的種子,如果沒有則生成一個0~1之間的隨機數(shù)。

 

示例
說明
random() 生成一個0~1之間的隨機數(shù)
random(10) 生成一個1~10之間的隨機數(shù)
random(C1) 相對當前單元格,取到C1單元格的值,如果取到的C1單元格有多個,則取第一個,再將這個值作為種子生成一個隨機數(shù)

 

round函數(shù)(四舍五入)

對一個小數(shù)進行四舍五入,它需要兩個參數(shù),第一個參數(shù)要進行四舍五入的小數(shù)或表達式,第二個為

一個可選的

要保留的小數(shù)位數(shù),如果沒有,則不保留小數(shù)。

 

示例
說明
round(32.12) 計算后的值為32
round(32.123,2) 計算后的值為32.12
round(C1,2) 相對當前單元格,取到C1單元格的值,如果取到的C1單元格有多個,則取第一個,然后對這個值做保留兩位小數(shù)的四舍五入操作

 

sqrt函數(shù)(平方根)

求一個數(shù)字或表達式計算后值的平方根,參數(shù)值計算后數(shù)據(jù)類型必須是數(shù)字,否則會報錯。

 

示例
說明
sqrt(2) 計算后的值為:1.414214
sqrt(C1) 相對當前單元格,取到C1單元格的值,如果取到的C1單元格有多個,則取第一個,然后對這個值進行取平方根計算

 

日期函數(shù)

date函數(shù)(日期)

輸出日期,date函數(shù)可以有一個參數(shù),就是日期格式,如果沒有則采用yyyy-MM-dd HH:mm:ss格式輸出日期。

 

 

示例
日期
date() 以yyyy-MM-dd HH:mm:ss格式輸出當前日期,如:2010-08-15 08:45:10
date('yyyy年MM月dd日') 以yyyy年MM月dd日格式輸出當前日期,如:2010年08月15日

day函數(shù)(天)

輸出當前在月份中的天,該函數(shù)沒有參數(shù)。

示例
說明
day() 可能輸出15,表示當前為15日

month函數(shù)(月) 

輸出當前月份,該函數(shù)沒有參數(shù)。 

示例
說明
month 可能輸出8,表示當前為8月份 

week函數(shù)(星期)

輸出當前是星期幾,該函數(shù)沒有參數(shù)。

 

示例
說明
week() 輸出值可能是“星期三”,表示當前為星期三

year函數(shù)(年) 

輸出當前年份,該函數(shù)沒有參數(shù)

示例
說明
year 輸出結(jié)果為2010,表示當前為2010年

字符串函數(shù)

indexOf函數(shù)(位置)

      用于返回一個字符串,在目標字符串中的位置,該函數(shù)至少需要兩個參數(shù),第一個為目標字符串,第二個為要查找的字符串,如果有三個參數(shù),那么第三個就是開始查找的位置信息,第三個參數(shù)必須是一定大于等于0的數(shù)字。

 

示例
說明
indexof('中華人民共和國','共和') 表示要從"中華人民共和國"這個字符串中找到“共和”字符串的位置
indexof('中華人民共和國','共和',2) 表示要從"中華人民共和國"這個字符串中第二個字符開始始,找到“共和”字符串的位置
indexof(C1,"人民",2) 相對于當前單元格,找到C1單元格,如果C1單元格有多個,則取第一個單元格值,再從這個值中第2個位置開始找到“人民”字符串的位置

length函數(shù)(長度)

       求目標字符串長度,該函數(shù)必須要有一個參數(shù)。

示例
說明
length("中華人民共和國") 計算結(jié)果為7
length(C1) 相對于當前單元格,找到C1單元格,如果C1單元格有多個,則取第一個單元格值,然后計算這個值長度

lower函數(shù)(轉(zhuǎn)小寫)

  將參數(shù)中英文全部轉(zhuǎn)為小寫,該函數(shù)必須要有一個參數(shù)。

示例
說明
lower("Super man") 計算后的結(jié)果為:super man
lower(C1) 相對于當前單元格,找到C1單元格,如果C1單元格有多個,則取第一個單元格值,然后將這個值中所有英文轉(zhuǎn)換成小寫

upper函數(shù)(轉(zhuǎn)大寫)

  將參數(shù)中英文全部轉(zhuǎn)為大寫,該函數(shù)必須要有一個參數(shù)。

示例
說明
upper("Super man") 計算后的結(jié)果為:SUPER MAN
upper(C1) 相對于當前單元格,找到C1單元格,如果C1單元格有多個,則取第一個單元格值,然后將這個值中所有英文轉(zhuǎn)換成大寫

replace函數(shù)(替換字符串)

這個函數(shù)需要有三個參數(shù),第一個是目標字符串,第二個是要被替換的字符串,第三個是要替換的字符串。

示例
說明
replace("他是一個好人","他","她") 計算結(jié)果為:她是一個好人
replace(C1,"他","她") 相對于當前單元格,找到C1單元格,如果C1單元格有多個,則取第一個單元格值,然后再將這個值中所有“他”換成“她”

substring函數(shù)(子字符串)

       該函數(shù)允許有三個參數(shù),第一個是目標字符串,第二個為開始截取的位置,第三個為截取結(jié)束的位置。

示例
說明
substring("他是一個好人",2) 運行結(jié)果為:一個好人
substring("他是一個好人",2,4) 運行結(jié)果為:一個
substring(C1,2,10) 相對于當前單元格,找到C1單元格,如果C1單元格有多個,則取第一個單元格值,然后再取這個值中第2到第10個字符之間內(nèi)容

trim函數(shù)(去空格)

       去除目標字符串兩邊空格,該函數(shù)要求必須要有一個參數(shù)。

示例
說明
trim(" 一個好人 ") 運行結(jié)果為: 一個好人
trim(C1) 相對于當前單元格,找到C1單元格,如果C1單元格有多個,則取第一個單元格值,然后再將這個值兩邊可能存在的空格全部去除

json函數(shù)(解析JSON字符串)

      json函數(shù)是2.1.3版本新增的,該函數(shù)可以解析指定的目標JSON字符串,并取出指定的屬性值。json函數(shù)需要有兩個參數(shù),第一個是目標JSON字符串對象,第二個是要取出的屬性名。

示例
說明
json(emp.select(other),'name') 取出數(shù)據(jù)集emp中other屬性值對應(yīng)的字符串,將其轉(zhuǎn)換為JSON,再從這個JSON中取name屬性值。
json(emp.select(other),'company.name') 取出數(shù)據(jù)集emp中other屬性值對應(yīng)的字符串,將其轉(zhuǎn)換為JSON,再從這個JSON中取company子對象下的name屬性值。
對JSON字符串的要求json函數(shù)在解析JSON字符串時,要求必須是標準的JSON字符串,比如下面這樣的:{"name":"superman","age":32,"company":{"name":"bstek","address":"SHANGHAI CHINA"}}也就是key屬性也需要用“”包裹的,如果是下面這種類型的JSON字符串就解析時就會產(chǎn)生錯誤:{name:"superman",age:32,company:{name:"bstek",address:"SHANGHAI CHINA"}}


以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號