Regex Google Sheets正则表达式结果不等于文本
我有一个电子表格,我正在使用Regex Google Sheets正则表达式结果不等于文本,regex,google-sheets,comparison,Regex,Google Sheets,Comparison,我有一个电子表格,我正在使用IMPORTHTML导入价格 导入结果包含带文本的价格。 我使用REGEXEXTRACT仅获取价格。 问题是提取值不等于其他单元格中的相同值 对于exmaple: 导入结果为: 58美元,免费送货。细节 在单元格A1中-使用正则表达式“[0-9][0-9].[0-9][0-9]”的REGEXEXTRACT,结果为58.00 在单元格A2中-我键入了58.00 如果(A1=A2…)尝试比较这两个参数将失败 知道为什么以及如何修复它吗 谢谢公式 试一试 解释 REGEXE
IMPORTHTML
导入价格
导入结果包含带文本的价格。
我使用REGEXEXTRACT
仅获取价格。
问题是提取值不等于其他单元格中的相同值
对于exmaple:
导入结果为:
58美元,免费送货。细节
在单元格A1中-使用正则表达式“[0-9][0-9].[0-9][0-9]”的REGEXEXTRACT
,结果为58.00
在单元格A2中-我键入了58.00
如果(A1=A2…)尝试比较这两个参数将失败
知道为什么以及如何修复它吗
谢谢公式
试一试
解释
REGEXEXTRACT总是返回一个文本值。如果键入58.00,很可能它被标识为一个数字。Formula
试一试
解释
REGEXEXTRACT始终返回一个文本值。如果键入58.00,很可能它被标识为一个数字。您可以使用以下regex提取:
REGEXEXTRACT(<CELL>, "^\W*([\d.]+)")
REGEXEXTRACT(,“^\W*([\d.]+)”)
见
“^\W*([\d.]+)”
表示:
-字符串的开头^
-零个或多个非单词字符(非字母、数字、下划线)\W*
-第1组:一个或多个数字或点([\d.]+)
根据Ruben的详细信息,您需要将使用
REGEXEXTRACT
提取的字符串值转换为使用=value
提取的文本的实际值。您可以使用以下正则表达式提取:
REGEXEXTRACT(<CELL>, "^\W*([\d.]+)")
REGEXEXTRACT(,“^\W*([\d.]+)”)
见
“^\W*([\d.]+)”
表示:
-字符串的开头^
-零个或多个非单词字符(非字母、数字、下划线)\W*
-第1组:一个或多个数字或点([\d.]+)
根据Rubén的详细信息,您需要将使用
REGEXEXTRACT
提取的字符串值转换为使用=value
提取的文本的实际值
=VALUE(REGEXTRACT(<CELL1>,"^\W*([\d.]+)")
答案是:
=VALUE(REGEXTRACT(<CELL1>,"^\W*([\d.]+)")
将您自己的
REGEXEXTRACT
用另一个括起来:=REGEXEXTRACT(REGEXEXTRACT(…),“^\W*([\d.]+)”)
@WiktorStribiżew这是一个问题的解决方案,还是只是对我的正则表达式语法的改进?试试看,如果有效,我会给出解释。这不是任何改进,它是另一个提取函数,旨在从正则表达式提取的值中获取第一个浮点/整数。实际上,我不知道你的方法是什么像这样的书-你能分享这张表吗?或者仅仅是一些类似于调试的东西吗?@WiktorStribiżew谢谢,我在下面的答案中使用了你的正则表达式,你使用了=VALUE(REGEXTRACT(,“[0-9][0-9].[0-9][0-9]”,“^\W*([\d.]+)”=
)用另一个正则表达式括住你自己的REGEXEXTRACT
:=REGEXEXTRACT(REGEXTRACT(…),“^\W*([\d.]+)”)
@WiktorStribiżew这是一个问题的解决方案,还是只是对我的正则表达式语法的改进?试试看,如果有效,我会给出解释。这不是任何改进,它是另一个提取函数,旨在从正则表达式提取的值中获取第一个浮点/整数。实际上,我不知道你的方法是什么像这样的书-你能分享这张表吗?或者是类似于debug的东西吗?@WiktorStribiżew谢谢,我在下面的答案中使用了你的正则表达式,你使用了=VALUE(REGEXTRACT(REGEXTRACT)(REGEXEXTRACT(,“[0-9][0-9][0-9]”,“^\W*([\d.]+)”)谢谢?你的答案加上@ WikTrrBiBi的回答给了我最好的解决办法,记住要给那些有用的帖子投赞成票。还要考虑发布一个答案来和其他人分享最好的解决方案。他不能投票,所以我为他做了这件事,因为它真的很有帮助。谢谢!你的答案加上@ WikTrrBiBi的回答给了我最好的答案。解决办法记得要给那些有用的帖子投赞成票。也要考虑发布一个答案来和其他人分享最好的解决方案。他不能投票,所以我为他做了这件事,因为它真的很有帮助。