这一篇将用案例介绍
Left,Mid,Right,Len,Find
函数的使用
Left
Mid
Right
做了一个简单的示意图
Left函数表示从左边第1位开始,取6个字符
Mid函数表示从第7位开始,取8个字符,也就是中间7-14位字符
Right函数表示从右边第1位开始,取4个字符
最常用的案例就是从身份证号中获取出生年月日
以及判断性别
因为倒数第2位数字代表性别
奇数为男,偶数为女
(忘记这个规则的时候想想自己身份证倒数第2位数字并想想自己的性别)
提取年月日的函数这么写
=CONCATENATE(MID(A2,7,4),"年",MID(A2,11,2),"月",MID(A2,13,2),"日")
(⊙o⊙)…貌似有点长
&符号可以代替Concatenate
提取并判断性别的函数这么写
=IF(MOD(MID(A2,17,1),2),"男","女")
提取出数字,并判断除以2的余数
余数为1,则为男,否则为女
Len
这是一个简单而非常好用的函数
如果你经常从数据库导出表格
那么这个函数非常有用
因为数据库总是带一些奇奇怪怪的符号
要命的是
这些符号还看不见!
就像下面
你以为只有3个字的
结果长度却有4
这个问题经常让人无从发觉而抓狂
粗暴简单的解决办法是用Clean函数
还有一个常用的案例是提取中英文字符
这个需要一些字符长度的知识
以及知道Lenb函数的用法
在Lenb函数模式下
中文字符为2个长度(包括中文符号)
英文和数字为1个长度
通过这个特性
对于AB排列的中英文字符串
我们就可以提取它的中文或者英文了
=LEFT(A15,LENB(A15)-LEN(A15))
=RIGHT(A15,2 * LEN(A15)-LENB(A15))
对于ABA这种混排的就无能为力了
Find
它可以找到字符串的位置在第几位
如果没找到会返回错误
(
这真是一个Bug的设定
没找到应该返回0啊
为啥要返回错误
这个设定导致我每次使用Find必须要嵌套无数个Iferror(if(....
)
前几天又看到一个Search函数
顺便比较一下
他们参数都是一样的
只是Search不区分大小写
(以及Search可用通配符
以上