字符串提取,是表親們經常遇到的問題,今天就和大家一起學習字符串提取的方法。
如下圖所示,要從A列的路徑中提取出文件名稱。
觀察這些數(shù)據(jù),咱們可以發(fā)現(xiàn):
A列字符串中都是以“\”字符進行分隔的,實際上咱們就是提取最后一個反斜杠“\”后的內容。
有多種方法可以處理這個問題:
=IFERROR(RIGHT(A2,LEN(A2)-FIND('*',SUBSTITUTE(A2,'\','*',LEN(A2)-LEN(SUBSTITUTE(A2,'\',''))))),'')
LEN(A2)-LEN(SUBSTITUTE(A2,'\','')這部分是計算字符串中一共有幾個“\”。
首先用SUBSTITUTE 函數(shù)以一個新字符“*”,替換掉最后一個“\”。
然后再利用FIND函數(shù)找到“*”在文本串中的位置。
接下來用LEN(A2)計算出字符串的總長度,再減去星號“*”在文本串中的位置,余下的就是咱們需要提取的字符個數(shù)。
最后用RIGHT函數(shù)從A2單元格的右側開始,提?。?span>字符長度-星號位置)的字符,就是咱們需要的結果了。
B2單元格輸入以下公式:
=TRIM(RIGHT(SUBSTITUTE(A2,'\',REPT(' ',99)),99))
REPT(' ',99)的作用是生成99個空格。
再用SUBSTITUTE函數(shù),將間隔符號“\”全部替換為99個空格。
接下來使用RIGHT函數(shù),從替換后的字符串右側開始,提取99個字符,這樣就得到最后一個“\”之后的字符串和不確定數(shù)量的空格。
最后使用TRIM函數(shù),將多余的空格替換掉。
選中B列,按Ctrl+H調出替換對話框。
在查找內容編輯框中輸入: *\
星號* 是通配符,表示任意多個字符。*\ 就是表示字符“\”和他之前的所有內容。
只要點擊【全部替換】,就可以快速提取出需要的結果了。
三種方法,各有千秋,公式法的特點是數(shù)據(jù)源發(fā)生變化后,結果能自動更新,但是對于初學者來說,一層層的嵌套,會有點眼暈。
第三種方法的特點是便捷快速,缺點是數(shù)據(jù)源發(fā)生變化后,結果不能自動更新。
說說看,你更喜歡哪種呢?
圖文:耿勇 祝洪忠