截取字符串最后三维_Excel常见文本截取函数

三大文本截取函数语法:

1、LEFT函数用于从一个文本字符串的第一个字符开始返回指定个数的字符

语法:LEFT( string, n )

2、right函数:返回从字符串右边取出的指定数量的字符。

语法:Right(string, length)

3、MID函数:从一个字符串中截取出指定数量的字符

MID(text, start_num, num_chars)

text被截取的字符

start_num从左起第几位开始截取(用数字表达)

num_chars从左起向右截取的长度是多少(用数字表达)

一、 中文加数字的混合数据提取

2b3284c8242ba78ab988be1eb3bac3df.png

上图为姓名与手机号码的混合数据,请将姓名和手机号码分离出来。

公式一:B2=LEFT(A2,LENB(A2)-LEN(A2))

公式解读:经观察,A列中的数据前几个字符都是中文字符,后几个是数字。我们可以用LENB函数和len函数综合使用来判断中文字符和数字的个数。

LENB函数语法:LENB函数的功能为返回文本字符串中用于代表字符的字节数。此函数用于双字节字符。

Lenb函数语法:= Lenb( 字符串 ),特别注意在LENB函数中,一个中文字符算2个字节,数字和英文字符算一个字节。

Len函数语法:Len():得到字符串的长度。语法Len (string)

参数string:string类型变量返回值Long。函数执行成功时返回字符串的长度,发生错误时返回-1。如果任何参数的值为NULL,则Len()函数返回NULL。

在len函数中,中文字符、英文字符、数字字符都算作一个字符,这和lenb函数是不同的,要特别注意。

LENB(A2)-LEN(A2)就能得出在A2中中文字符的个数,中文字符是连续的,且是从左边第一个字符开始的,因此我们用LEFT(A2,LENB(A2)-LEN(A2))就能提取出中文字符,也就是姓名。

公式二:C2=RIGHT(A2,2*LEN(A2)-LENB(A2))

经观察,数字字符是连续的,且在中文字符之后。

中文字符的个数=LENB(A2)-LEN(A2)

数字字符的个数= LEN(A2)-中文字符的个数

综合以上两个公式我们可以得出总公式:数字字符的个数=2*LEN(A2)-LENB(A2)

最后我们再嵌套right函数就能将数字分离出来。

因此总公式为:=RIGHT(A2,2*LEN(A2)-LENB(A2))

因为我们已经求出B2,其实C2也能利用B2来得出,公式为:C2=RIGHT(A2,LEN(A2)-LEN(B2))

Gif操作如下:

8b07582656cbb7b2d2d8891b08501b2b.gif

二、 中文、数字、英文混合数据提取出数字

ac58b7e04237fcc05f667857a4f438be.png

公式:B2=-LOOKUP(1,-MID(A2,MIN(FIND({0;1;2;3;4;5;6;7;8;9},A2&1/17)),ROW($1:$15)))

公式解读:经观察,a列数据中既有文本,也有英文和数字字符,因此不能用lenb函数和len函数来截取数字。

公式中1/17约等于0.0588235294117647,包含0至9的所有数字,然后用A2&1/17是将文本和数字关联起来,再用FIND({0;1;2;3;4;5;6;7;8;9},A2&1/17)就能找出0、1、2、3、4、5、6、7、8、9每个数字所在的位置,再用min函数求出所在位置的最小值,也就是数字字符在原数据开始的位置。ROW($1:$15)是从1到15行,excel最大支持识别15位数字。ROW($1:$15)是一个从1到15的数组。MID(A2,MIN(FIND({0;1;2;3;4;5;6;7;8;9},A2&1/17)),ROW($1:$15))是将A2分别提取1位、2位、3位直到15位数据。Mid函数前面加一个负号是将文本转为数值。文本是没法计算的,除非转换成数值。我们再用lookup函数1来进行模糊查找,就能返回最小的数值。因为返回的数值是负数,我们最后在公式外围再加上负号,负负得正,就将数字提取出来了。本公式是常见的提取混乱数据中的数字的套路公式,有一定函数基础的读者会理解,对于新手还是先记住公式。拿来就用就好。

Gif操作如下:

b13c69b8eea9167c7cec99dc5308fa31.gif
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值