Note: The other languages of the website are Google-translated. Back to English

從文本字符串中刪除括號或方括號內的文本

假設您有一個文本字符串列表,並且部分文本包含在括號內,現在,您想要刪除括號內的所有文本,包括括號內的所有文本,如下面的屏幕快照所示。 本文,我將介紹一些解決Excel中此任務的方法。


使用公式從文本字符串中刪除括號或方括號內的文本

您可以基於SUBSTITUTE,MID FIND和LEN函數創建公式來處理此作業,其通用語法為:

=SUBSTITUTE(text,MID(LEFT(text,FIND(")",text)),FIND("(",text),LEN(text)),"")
  • text:要使用的文本字符串或單元格引用。

請將以下公式複製或輸入到要獲取結果的空白單元格中:

=SUBSTITUTE(A2,MID(LEFT(A2,FIND(")",A2)),FIND("(",A2),LEN(A2)),"")

然後,將填充手柄向下拖動到要應用此公式的單元格上,並且括號內的所有文本(包括括號)都已刪除,請參見屏幕截圖:

公式說明:

1. MID(LEFT(A2,FIND(")",A2)),FIND("(",A2),LEN(A2)): 此 MID 函數被識別為 SUBSTITUTE 函數中的 old_text 參數。

  • LEFT(A2,FIND(“)”,A2)):公式的此部分用於在單元格A2中從左括號到右括號提取文本字符串,您將得到如下結果:“ Tom Hill(休斯頓德克薩斯州)”。 這將被識別為MID函數中的text參數。
  • FIND(“(”,A2):此FIND函數將從單元格A2返回左括號的位置,結果為:10.此零件公式被識別為MID函數中的start_num參數。
  • LEN(A2):LEN函數將獲取單元格A2中的字符總數,結果為:27。這部分被識別為MID函數的num_chars參數。
  • MID(LEFT(A2,FIND(“)”,A2)),FIND(“(”,A2),LEN(A2))= MID(“湯姆·希爾(德克薩斯州休斯頓)”,10,27):此MID函數用於從LEFT函數返回的文本字符串中提取字符,從長度為27個字符的第十個字符開始,您將獲得如下結果:“(休斯頓德克薩斯州)”。

2. SUBSTITUTE(A2,MID(LEFT(A2,FIND(“)”,A2)),FIND(“(”,A2),LEN(A2)),“”)= SUBSTITUTE(A2,“(休斯頓德克薩斯州) “,”“): 最後,此SUBSTITUTE函數用於將MID函數返回的舊文本替換為單元格A2的文本字符串中的任何內容。

筆記:

1.如果文本部分用方括號括起來,則只需用以下公式將括號替換為方括號:

=SUBSTITUTE(A2,MID(LEFT(A2,FIND("]",A2)),FIND("[",A2),LEN(A2)),"")

2.如果單元格值中沒有括號,則應用上面的公式後,將顯示錯誤,在這種情況下,您只需要將上面的公式包含在IFERROR函數中:

=IFERROR(SUBSTITUTE(A2,MID(LEFT(A2,FIND(")",A2)),FIND("(",A2),LEN(A2)),""),A2)


使用用戶定義的功能從文本字符串中刪除括號或方括號中的文本

如果文本字符串中有兩個或多個括號,則以上公式只能用於刪除第一個括號中的文本。 要刪除多個括號中的所有文本(如以下屏幕截圖所示),如何在Excel中實現呢?

在這種情況下,用戶定義函數可以幫助您刪除括號中的所有文本。 請執行以下步驟:

1。 按住 Alt + F11鍵 鍵,然後打開 Microsoft Visual Basic for Applications 窗口。

2。 點擊 插入 > 模塊,然後將以下VBA代碼粘貼到“模塊窗口”中。

Function remtxt(ByVal str As String) As String
'updateby Extendoffice
  While InStr(str, "(") > 0 And InStr(str, ")") > InStr(str, "(")
    str = Left(str, InStr(str, "(") - 1) & Mid(str, InStr(str, ")") + 1)
  Wend
  remtxt = Trim(str)
End Function

3。 然後,返回到要使用的工作表,並在空白單元格中輸入以下公式: = remtxt(A2),然後將填充手柄向下拖動到您要應用此公式的單元格,多個括號內的所有文本(包括括號)都被立即刪除,請參見屏幕截圖:


使用的相對功能:

  • LEN:
  • LEN函數返回文本字符串中的字符數。
  • MID:
  • MID函數用於從給定文本字符串的中間查找並返回特定數量的字符。
  • FIND:
  • FIND函數用於在另一個字符串中查找一個字符串,並返回該字符串在另一個字符串中的起始位置。
  • SUBSTITUTE:
  • Excel SUBSTITUTE函數將文本字符串中的文本或字符替換為另一個文本或字符。

更多文章:


最佳辦公效率工具

Kutools for Excel-幫助您從人群中脫穎而出

您想快速,完美地完成日常工作嗎? Kutools for Excel具有300個強大的高級功能(合併工作簿,按顏色求和,拆分單元格內容,轉換日期等),並為您節省80%的時間。

  • 專為1500個工作方案而設計,可幫助您解決80%的Excel問題。
  • 每天減少數千次鍵盤和鼠標的點擊,減輕您疲倦的眼睛和手的疲勞。
  • 在3分鐘內成為Excel專家。 不再需要記住任何痛苦的公式和VBA代碼。
  • 30天無限制免費試用。 60天退款保證。 免費升級和支持2年。
Excel功能區(已安裝Kutools for Excel)

Office選項卡-在Microsoft Office(包括Excel)中啟用選項卡式閱讀和編輯

  • 一秒鐘即可在數十個打開的文檔之間切換!
  • 每天為您減少數百次鼠標單擊,告別鼠標手。
  • 查看和編輯多個文檔時,可將您的工作效率提高50%。
  • 像Chrome,Firefox和新的Internet Explorer一樣,為Office(包括Excel)帶來高效選項卡。
Excel的屏幕截圖(已安裝Office選項卡)
按評論排序
留言 (4)
還沒有評分。 成為第一位評論!
網站主持人對此評論進行了最小化
=TRIM(SUBSTITUTE(SUBSTITUTE(P10,"(",""),")",""))
網站主持人對此評論進行了最小化
J'ai testé cette formule mais elle ne fonctionne pas sur GGsheet
網站主持人對此評論進行了最小化
你好,卡米爾
要刪除 Google 表格中括號內的文字,請應用以下公式:
=regexreplace(A2, "(\s\(.*?\))",)


請試一試,希望對您有所幫助!
網站主持人對此評論進行了最小化
有用!!! 謝謝!
這裡還沒有評論
留下你的意見
以訪客身份發帖
×
評價此帖子:
0   字符
推薦地點