Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/google-sheets/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google sheets 使用REGEXEXTRACT提取可能包含逗号或点的数字_Google Sheets - Fatal编程技术网

Google sheets 使用REGEXEXTRACT提取可能包含逗号或点的数字

Google sheets 使用REGEXEXTRACT提取可能包含逗号或点的数字,google-sheets,Google Sheets,我有一些格式的数字列表,可能包括也可能不包括点和逗号。这些数字被锁定在一个字符串中。例如: 你好1000再见 你好,2000.12再见 哈罗3000.00欧夫威德森酒店 如何提取这些数字? 我不在乎是否加逗号,但点显然很重要。 我需要正则_表达式用于REGEXEXTRACT(以及其余的REGEX公式)。 输出应为: 一千 2000.12 3000.00假设您的原始数据位于A2:A中,则将其用于B2(或第二个单元格)中的空列: =ArrayFormula(如果(A2:A=“”,IFERROR(值)

我有一些格式的数字列表,可能包括也可能不包括点和逗号。这些数字被锁定在一个字符串中。例如:

你好1000再见

你好,2000.12再见

哈罗3000.00欧夫威德森酒店

如何提取这些数字? 我不在乎是否加逗号,但点显然很重要。 我需要正则_表达式用于REGEXEXTRACT(以及其余的REGEX公式)。 输出应为:

一千

2000.12


3000.00

假设您的原始数据位于A2:A中,则将其用于B2(或第二个单元格)中的空列:

=ArrayFormula(如果(A2:A=“”,IFERROR(值)(REGEXEXTRACT(A2:A,“\d[\d,\.]*\d“)”))

正则表达式部分用通俗易懂的英语读作:“提取以数字开头,后跟任意数量的数字、逗号或句点(或不加逗号或句点)并以数字结尾的任何部分。”


您可能希望将格式>数字>货币应用于结果列。

这太完美了,谢谢!太好了,Tom。感谢您的反馈。顺便说一句,如果您将有个位数的金额,您需要从正则表达式中删除最后的\d。如果您总是有10.00或更多的金额,您将按原样设置。