分享

文本函数len和lenb的用法

 刘卓学EXCEL 2021-04-02

之前说过很多文本函数,今天说说len和lenb的用法。这个函数有2种形式,一种是len,一种是lenb。len是返回字符串中字符的个数,而lenb是返回字符串中字节的个数。它们的区别就在于后缀的b,b代表byte,字节的意思。

这里有2个概念,一个是字符,一个是字节。

字符:一串字符有几个符号,就是几个字符。比较好理解。

字节:一般来说中文汉字和中文标点符号中的1个字符按2个字节计算。英文字母和英文标点符号还有数字,1个字符就是1个字节。其他还有一些全角输入的字母和数字也可能是双字节的。

-01-

函数说明

LEN函数语法如下,只有1个参数。

len(text)  返回字符串中字符的个数

lenb(text) 返回字符串中字节的个数

Text    必需。要查找其长度的文本。空格将作为字符进行计数。

-02-

示例解释

如下图所示,A列是一些字符串,B列和C列分别是用len和lenb函数计算。可以看一下它们的区别。“我爱学习”用len计算是4个字符,用lenb计算是8个字节。说明1个汉字是2个字节。

“21abcd”用len计算是6个字符,用lenb计算是6个字节。说明1个数字和1个字母都是1个字节。利用这个特性,我们可以分别提取汉字和数字字母。

-03-

具体应用

1.将姓名和手机号分别提取出来。

A列是姓名和手机号的信息,现在要将手机号和姓名分别提取出来,姓名列的公式为在B8单元格中输入公式=LEFT(A8,LENB(A8)-LEN(A8)),向下拖动。LENB(A8)-LEN(A8)这部分用字节数减去字符数,正好就是汉字的个数,最后用left将汉字提取出来。

手机号列的公式为在C8单元格中输入公式=RIGHT(A8,2*LEN(A8)-LENB(A8)),向下拖动。2*LEN(A8)-LENB(A8)这部分是算出数字的个数,然后用right从右边提取出数字,也就是手机号。

right和left差不多,只不过从右边提取,后面会讲的。其他单双字节的分离都可以用这个方法。

2.提取手机号。

还是上面那个题,只不过现在A列的信息不像上面那么规律,姓名和手机号的顺序不一样。但我们仍然可以将其提取出来,而且方法不止1种。今天我们主要运用len和lenb。在B14单元格中输入公式=MID(A14,FIND(1,A14),2*LEN(A14)-LENB(A14)),向下拖动。

这个公式用到mid,find,还有今天的len和lenb。想要提取手机号,由于位置不是左边也不是右边,所以想到用mid函数。用mid函数又要知道它的起始位置和长度。发现手机号是以1开头的,可以用find找1的位置就是起始位置。由于是手机号,长度可以直接写11,但我们这里还是用2*LEN(A14)-LENB(A14),因为如果不是手机号,而是其他不定长度的数字,写一个数字就没办法了。

好了,今天的len和lenb就说到这里,你都学会了吗?你还有其他的方法吗?

1个问题至少有3种解决办法,单学一个函数很简单,要和其他函数结合起来灵活运用就不太容易,还得多运用多总结。如果你喜欢的话,就转发或者打赏,你们的支持就是我最大的动力!

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多