在 excel 中提取字符前后的文本

在 Excel 中,您可以编写公式来提取特定字符之后或之前的文本。在本教程中,我们将学习如何编写这些公式。

提取一个字符后的文本

在这个公式中我们需要使用 TRIM、RIGHT、SUBSTITUTE、REPT 和 LEN。而在下面的例子中,我们有两个单词值在值和中间的字符。

字符前后的片段文本
 =TRIM(RIGHT(SUBSTITUTE(A1,B1,REPT(" ",LEN(A1))),LEN(A1))) =TRIM(RIGHT(SUBSTITUTE(original_text,character,REPT(" ",LEN(original_text))),LEN(original_text)))

要理解这个公式,需要将其分为几个部分:

在第一部分中,我们有SUBSTITUTE(A1,B1,REPT(" ",LEN(A1))) 。这是将 (,) 字符替换为与字符长度相等的空格数的公式的一部分。

公式提取文本

您可以看到“Excel Advisor”之间有一个空格而不是逗号。

在第二部分中, =TRIM(RIGHT("Excel Advisor",LEN(A1)))从文本右侧提取文本,然后修剪它以删除多余的空格。

不同的角色实例?

在处理数据时,您可能有角色的多个实例,上面的公式可能无法帮助您处理这个问题。在这种情况下,您必须使用下面的公式。

具有多个字符实例时提取文本
 =IF(LEN(A1)-LEN(SUBSTITUTE(A1,B1,""))<=1,"",MID(SUBSTITUTE(A1,B1,"^^",C1),FIND("^^",SUBSTITUTE(A1,B1,"^^",C1))+2,LEN(A1)))

使用此公式,您需要指定要提取文本的字符,然后从该字符的实例开始。

指定要提取文本的字符

上面的公式很复杂,但效果却很神奇。此公式的代码是 SUBSTITUTE 函数,它可以帮助您获取字符的第二个或第 N 个瞬间,然后您可以用“^^”替换该瞬间,这进一步有助于提取文本。

但您也可以使用新的 TEXTAFTER 函数 (OFFICE 365),该函数具有在字符后获取文本的所有选项,而无需输入如上所述的复杂公式。

函数后的文本

您必须在函数中指定字符和实例。

指定字符和实例

提取字符前的文本

您可以使用下面的公式来获取字符之前的文本。

字符前的文本提取

这是我们用来获取字符后文本的精确公式。您应该使用 LEFT,而不是使用 RIGHT。获取左(前)文本。

 =TRIM(LEFT(SUBSTITUTE(A2,B2,REPT(" ",LEN(A2))),LEN(A2)))

这个公式的作用与这个公式完全一样。请参考它以使其易于理解。

不同的角色实例

有两种方法可以获取字符之前(或之后)的文本。

 =IF(LEN(A2)-LEN(SUBSTITUTE(A2,B2,""))<=1,"",LEFT(SUBSTITUTE(A2,B2,"^^",C2),FIND("^^",SUBSTITUTE(A2,B2,"^^",C2))-1))

可以在任何版本的Excel中使用;您可以指定字符和实例来获取文本。

提取字符前文本的公式

但如果您使用的是 Excel (Office 365),则不需要使用这个复杂的公式。相反,您可以使用 TEXTBEFORE 函数。

函数前的文本

获取 Excel 文件

下载

添加评论

您的电子邮箱地址不会被公开。 必填项已用 * 标注