regex - 为什么这个正则表达式在谷歌电子表格中不起作用?

标签 regex spreadsheet expression

我正在尝试使用谷歌电子表格中的正则表达式从网址中提取内容。但是电子表格返回 #VALUE! 出现以下错误:无效的正则表达式:无效的 perl 运算符:(?<

这是我正在使用的正则表达式:(?<=raid_boss=)[a-zA-Z0-9_]+

示例网址将包含一个变量,表示 raid_boss=name 。这个正则表达式应该提取名称。它在我的测试程序中有效,但在谷歌电子表格中无效。

以下是 Google 电子表格中单元格的确切内容:=REGEXEXTRACT( B1 ; "/(?<=raid_boss=)[-a-zA-{}-9_]+" )

任何见解或帮助将不胜感激,谢谢!

最佳答案

听起来 Google 文档使用的任何正则表达式引擎都不支持后向断言。它们是一个相对罕见的功能。

但是如果您使用捕获,REGEXEXTRACT 将返回捕获的文本,因此您可以这样做:

=REGEXEXTRACT( B1 ; "raid_boss=([a-zA-Z0-9_]+)" )

关于regex - 为什么这个正则表达式在谷歌电子表格中不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10441105/

相关文章:

php - 如何从 PHP 生成包含多个工作表的 Excel 文档?

macros - 在 LibreOffice 中更改单元格背景颜色

php - 如何理解 PHP 语句中的 OR 运算符

opencv - JavaCV:如何在二值图像中找到重要点

regex - 看背后 : all the rage in regex?

regex - 规则参数的模式匹配 Gitlab CI

php - 最后一点后的正则表达式提取字符串

php - 正则表达式匹配所有字符和换行符?

C# Epplus - 如何对除第一行以外的所有数据进行排序

python - 愚蠢的 Python 初学者