专注Java教育14年 全国咨询/投诉热线:444-1124-454
赢咖4LOGO图
始于2009,口口相传的Java黄埔军校
首页 hot资讯 在Excel中使用正则表达式

在Excel中使用正则表达式

更新时间:2022-04-19 08:23:47 来源:赢咖4 浏览3626次

正则表达式对于验证和操作数据非常有用。不幸的是,Excel 中没有对正则表达式的内置支持。您可以使用 VBA,但这有点太乱了。

在 Excel 插件 SeoTools 中,添加了四种方法:

=RegexpIsMatch(string input; string expr)

将输入字符串与正则表达式匹配,如果匹配则返回 true。

=RegexpFind(string input; string expr; int group)

采用正则表达式并从输入字符串中检索匹配的组。

=RegexpFindOnUrl(string url; string regexp; int group)

与 RegexpFind 相同,但输入字符串是网页的内容。

=RegexpReplace(string input; string expr; string replacement)

在指定的输入字符串中,用指定的替换字符串替换与指定正则表达式匹配的所有字符串。

以下所有示例均假定您已下载 SeoTools 并将其添加到您正在处理的文档中。

示例 1:使用 RegexpIsMatch 验证电子邮件地址

假设您有一列包含一堆电子邮件地址,并且您想要查找所有无效地址。以下公式将为所有无效的电子邮件地址返回 FALSE:

=RegexpIsMatch(“[email protected]”;”^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,6}$”)

示例 2:查找文本中的特定部分

现在假设您有一个包含文本的列,您想从中提取特定部分,即“Sports (id:4)”,我们想将“4”提取到新列中。

=RegexpFind(A1;”\(id:(\d+)\)”;1)

示例 3:获取一组关键词在谷歌中被索引的页数

对于最后一个示例,我们使用 SeoTools 中的正则表达式支持尝试一些简单的网络抓取。在我们的示例中,我们有一组关键字,并希望让公式返回搜索返回的页数。

=RegexpFindOnUrl(“https://www.google.com/search?q=”&UrlEncode(A1);”About ([0-9,]*) results”;1)

对于 SeoTools 中标有“(缓存)”的函数(例如 RegexpFindOnUrl),每个“会话”只会获取一次 URL。因此,如果您要从网页中提取多个部分,则即使您在不同的公式中多次引用 URL,页面的源也只会下载一次。

以上就是关于“在Excel中使用正则表达式”的介绍,大家如果对此比较感兴趣,想了解更多相关知识,不妨来关注一下赢咖4的Java赢咖4在线学习,里面的课程内容从入门到精通,通俗易懂,适合小白学习,希望对大家能够有所帮助。

提交申请后,顾问老师会电话与您沟通安排学习

免费课程推荐 >>
技术文档推荐 >>