excel中,如何提(截)取两个特定字符之间所有字符?
截取字符串常用函数:left函数,right函数和mid函数
left函数语法:left(text,num_chars),从左侧开始截取部分字符串
right函数语法:right(text,num_chars),从右侧开始截取部分字符串
其中:text表示要截取的字符串,num_chars表示要截取的字符数
mid函数语法:mid(text,start_num,num_chars),中间某位置开始截取部分字符串
其中:text表示要截取的字符串,start_num表示从第几位字符串开始截取,num_chars表示要截取的字符数。
示例
看上图可以发现,这几个公式在平时会用得比较多,LEFT和RIGHT函数都很容易理解,而MID函数可能要提一下:
start_num表示从第几位字符开始,这需要手工数的,比如上图的出生年月是从第7位开始,那么第2个值就填7,然后我们需要截取8位,第3个值填8
但是,现在有个问题,如果是像下图中的情况怎么办?
我们需要截取
和________
之间的数据,但是每个单元格相同字符的开始位数是不一样的,单纯用MID函数是实现不了的
我们用的公式是:
=MID(B1,FIND(" ",B1)+1,FIND("________",B1)-FIND(" ",B1)-1)
FIND函数用于定位特定字符的所在位数,而我们需要的开始位数是在后一位,所以第2个值变成了:
FIND(" ",B1)+1
同理,找出________
所在位数,然后减去
的所在位数,但是这样计算之后还会包括________
本身,所以还要减去1,所以第3个值最后变成了:
FIND("________",B1)-FIND(" ",B1)-1
评论已关闭