龙空技术网

从路径中提取文件名就这么简单

Excellenter 82

前言:

目前姐妹们对“路径名称”大约比较看重,朋友们都想要了解一些“路径名称”的相关内容。那么小编在网络上收集了一些对于“路径名称””的相关知识,希望同学们能喜欢,小伙伴们快快来了解一下吧!

字符串提取是我们经常遇到的问题,如图所示,要从A列的路径中提取出文件名称。

观察数据的特点可以发现,A列字符串中都是以“\”字符进行分隔的,实际上我们就是提取最后一个反斜杠“\”后的内容。结合数据的这个特点,我们有如下多种方法来处理这个问题。

方法1:SUBSTITUTE 函数

我们可以用SUBSTITUTE 函数以一个新字符替换掉最后一个“\”字符,然后利用FIND函数找到新字符在文本串中位置的特点,结合新的文本长度再去取新字符靠右边的文件名就可以了。故在B2单元格中定义如下公式:

=IFERROR(RIGHT(A2,LEN(A2)-FIND("*",SUBSTITUTE(A2,"\","*",LEN(A2)-LEN (SUBSTITUTE(A2,"\",""))))),"")

公式解析如下:

1. LEN(A2)-LEN(SUBSTITUTE(A2,"\","")这部分先将“\”全部替换掉,然后可以计算出字符串中一共有几个“\”。

2.首先,用SUBSTITUTE 函数以一个新字符“*”替换掉最后一个“\”。

3. 然后再利用FIND函数找到“*”在文本串中的位置。

4. 接下来用LEN(A2)计算出字符串的总长度,再减去星号“*”在文本串中的位置,余下的就是我们需要提取的字符个数。

5. 最后用RIGHT函数从A2单元格的右侧开始,提取(字符长度-星号位置)的字符,就是需要的结果了。

方法2:SUBSTITUTE 函数

=TRIM(RIGHT(SUBSTITUTE(A2,"\",REPT(" ",99)),99))

1. REPT(" ",99)的作用是生成99个空格。

2. 再用SUBSTITUTE函数,将间隔符号“\”全部替换为99个空格。

3. 接下来使用RIGHT函数,从替换后的字符串右侧开始,提取99个字符,这样就得到最后一个“\”之后的字符串和不确定数量的空格。

4. 最后使用TRIM函数,将多余的空格替换掉。

方法3:REPLACE 函数

=REPLACE(A2,1,FIND("*",SUBSTITUTE(A2,"\","*",LEN(A2)-LEN(SUBSTITUTE(A2,"\","")))),)

最关键的是确定REPLACE函数的第3个参数num_chars,确定的原理同上述方法1的分析。

拓展应用 基于上述原理,我们可以同样地使用此方法提取网络路径中最后的文件名、单元格中的最后一个英文单词。

标签: #路径名称