Applies ToMicrosoft 365 专属 Excel Microsoft 365 Mac 版专属 Excel Excel 网页版

REGEXEXTRACT 函数允许基于提供的正则表达式从字符串中提取文本。 可以从第一个匹配中提取第一个匹配项、所有匹配项或捕获组。

语法

REGEXEXTRACT 函数提取所提供文本中与模式匹配的字符串。 

REGEXEXTRACT 函数的语法为:

REGEXEXTRACT (文本、模式、[return_mode]、[case_sensitivity])

论点

描述

text

(必需)

文本或对包含要从中提取字符串的文本的单元格的引用。

模式

(必需)

正则表达式 (“regex”) ,用于描述要提取的文本模式。

return_mode

一个数字,指定要提取的字符串。 默认情况下,返回模式为 0。 可能的值为:

0: 返回与模式匹配的第一个字符串

1: 以数组形式返回与模式匹配的所有字符串

2: 以数组的形式返回第一个匹配项中的捕获组

注意:捕获组是正则表达式模式的一部分,用括号“ (...) ”括起来。 它们允许单独返回单个匹配的单独部分。

case_sensitivity

确定匹配项是否区分大小写。 默认情况下,匹配项区分大小写。 输入以下选项之一:

0: 区分大小写

1: 不区分大小写

注意: 

  • 编写正则表达式模式时,可以使用与各种字符匹配的名为“token”的符号。 下面是一些简单的令牌供参考:

  • “[0-9]”:任何数字

  • “[a-z]”:到 z 范围内的字符

  • “.”:任意字符

  • “a”:“a”字符

  • “a*”:零个或多个“a”

  • “a+”:一个或多个“a”

  • 此函数的所有正则表达式以及 REGEXTESTREGEXREPLACE 都使用正则表达式的 PCRE2“风格”。

  • REGEXEXTRACT 始终返回文本值。 可以使用 VALUE 函数将这些结果转换回数字。

示例

复制示例数据并将其粘贴到新 Excel 工作表的单元格 A1 中。 如果需要,可以调整列宽以查看所有数据。

使用模式“[A-Z][a-z]+”提取基于大写字母的名称

数据

DylanWilliams

公式

=REGEXEXTRACT (A2,“[A-Z][a-z]+”)

=REGEXEXTRACT (A2,“[A-Z][a-z]+”,1)

下图显示了结果。

REGEXEXTRACT 用于使用模式“[A-Z][a-z]+”提取名称数据

使用模式“[0-9 () ]+ [0-9-]+”根据其结构提取电话号码

数据

索尼娅里斯 (378) 555-4195 天使布朗 (878) 555-8622 布莱克·马丁 (437) 555-8987 William Kirby (619) 555-4212 艾弗里·史密斯 (579) 555-5658 帕克琼斯 (346) 555-0925 利亚姆小 (405) 555-0887 Hollie Rees (666) 555-1872

公式

=REGEXEXTRACT (A2,“[0-9 () ]+ [0-9-]+”,1)

下图显示了结果。

REGEXEXTRACT 用于使用模式“[0-9 () ]+ [0-9-]+”从混合文本中提取特定格式的多个电话号码

需要更多帮助?

需要更多选项?

了解订阅权益、浏览培训课程、了解如何保护设备等。

社区可帮助你提出和回答问题、提供反馈,并听取经验丰富专家的意见。