20.8.1 LEFT( )函数

LEFT函数用于从文本左侧起提取指定个数的字符。

语法:LEFT(text,[num_chars])

参数说明:

text:表示要从中提取字符的文本。

num_chars:表示要提取的字符个数。

如图20‑15所示,在B2单元格输入以下公式,即可提取A列单元格中内容左侧的3个字符。

=LEFT(A2,3)




mybatis test 里integer转字符串 mybatis字符串转数字_mybatis字符串转成数字


图20-15 利用LEFT函数提取左侧指定个数文本

20.8.2 RIGHT( )函数

RIGHT函数用于从文本右侧起提取指定个数的字符。

语法:RIGHT(text,[num_chars])

参数说明:

text:表示要从中提取字符的文本。

num_chars:表示要提取的字符个数。

如图20‑16所示,在B2单元格输入公式,即可提取单元格中内容右侧的8个字符。

=RIGHT(A2,8)


mybatis test 里integer转字符串 mybatis字符串转数字_参数说明_02

图20-16 利用RIGHT函数提取右侧指定个数的字符


【示例-1】图20‑17展示的某公司上班打卡机的数据,数据后4位为时间,例如A2单元格中的后4位为“0901”,其表示9点1分。公司规定超过9点为迟到。现在B2单元格中输入以下公式,并复制到B12单元格,即可判断员工是否迟到。

=IF(--RIGHT(A2,3)>900,"迟到","")

该函数中RIGHT(A2,3)返回的结果为文本型数字,为了能正确判断,需要将使用以文本型数字转成数值型数字,此处采用加双负号(--)的形式将其转换。


mybatis test 里integer转字符串 mybatis字符串转数字_参数说明_03

图20-17 判断员工是否迟到

20.8.3 MID( )函数

MID函数用于从文本串指定位置提取指定个数的字符。

语法:MID(text,start_num,num_chars)

参数说明:

text:要提取字符的字符串。

start_num:指定文本中要提取的第一个字符的位置。

num_chars:提取字符的个数。

【示例-1】图20‑18展示的是从某财务软件中提取的科目信息,A列是银行存款科目连接开户行的信息,在B2单元格输入以下公式,复制到B6单元格,可单独提取A列中的开户行。

=MID(A2,6,20)

该MID函数的第三个参数为20,是笔者任意输入的。因笔者目测开户行字符不会超过20个字符。

20.8. MID( )函数

MID函数用于从文本串指定位置提取指定个数的字符。

语法:MID(text,start_num,num_chars)

参数说明:

text:要提取字符的字符串。

start_num:指定文本中要提取的第一个字符的位置。

num_chars:提取字符的个数。

【示例-1】图20‑18展示的是从某财务软件中提取的科目信息,A列是银行存款科目连接开户行的信息,在B2单元格输入以下公式,复制到B6单元格,可单独提取A列中的开户行。

=MID(A2,6,20)

该MID函数的第三个参数为20,是笔者任意输入的。因笔者目测开户行字符不会超过20个字符。


mybatis test 里integer转字符串 mybatis字符串转数字_mybatis字符串转成数字_04

图20-18 提取开户行

【示例-2】图20‑19展示的是连串银行卡号,为了方便浏览,现需要每四位加空格显示账号,在B2输入以下公式,可达到上述要求。

=MID(A2,1,4)&""&MID(A2,5,4)&""&MID(A2,9,4)&""&MID(A2,13,4)


mybatis test 里integer转字符串 mybatis字符串转数字_指定位置_05

图20-19 账号用空格区隔显示

【示例-3】图20‑20展示的是某产品规格,该规格格式为数值加&符号连接。

在B2输入以下公式,可计算产品体积。

=LEFT(A2,4)*MID(A2,6,4)*RIGHT(A2,4)

LEFT、MID、RIGHT返回的结果都为文本型数字,但文本型数字与文本型数字进行四则运算可以正确的计算,并且将返回的结果也是数值型数字(单元格格式仍显示为文本格式),所以不用使用加0、加双负号(--)等方式将文本型数字转成数值型数字。


mybatis test 里integer转字符串 mybatis字符串转数字_字符串_06

图20-20 计算产品体积

【示例-4】图20‑21展示是某些员工身份信息,现要求根据B列的身份证号码,提取对应的出生日期。

我国现行居民身份证号码是由18位数字组成的,数字代码含义如表20‑1所示


mybatis test 里integer转字符串 mybatis字符串转数字_指定位置_07


在C2单元格输入以下公式,向下复制到C8单元格,可提取身份证持有人的出生日期。

=MID(B2,7,8)

由于公式结果为文本型字符串,并非真正的日期,如果需要进行日期计算,可借助DATE函数构造标准的日期格式,在D2输入以下公式,可转成真正的日期。

=DATE(LEFT(C2,4),MID(C2,5,2),RIGHT(C2,2))

先利用LEFT、MID、RIGHT函数提取年、月、日的数字,然后再利用DATE函数组合年月日值,从而形成标准日期格式。


mybatis test 里integer转字符串 mybatis字符串转数字_mybatis字符串转成数字_08

图20-21 从身份证号码中提取出生日期

图20‑22所示,使用以下公式,可提取身份证中性别信息。

=IF(MOD(MID(B2,17,1),2),"男","女")

首先利用MID函数从身份证的17位开始,提取长度为1的字符串,然后利用MOD函数计算这个数字与2相除的余数,结果为1或0,再利用IF函数提取性别,即如果MOD的余数为1,返回“男”,否则返回“女”。


mybatis test 里integer转字符串 mybatis字符串转数字_参数说明_09

图20-22 从身份证号码中提取性别

用户若需要对单字节字符和双字节字符进行处理,可分别使用对应LEFTB函数、RIGHTB函数和MIDB函数,它们的函数语法与原函数相似,与原函数差异为LEFTB、RIGHTB和MIDB函数针对字节来处理。