如何从 Google 工作表中的文本中提取具有多个小数点的数字?
How to extract numbers with multiple decimal points from text in Google Sheets?
我正在尝试从单元格中的文本字符串中提取软件版本(纯数字和小数),但由于它有多个小数位,我无法获得完整结果。
示例(输入 --> 输出):
Plugin Version v4.5.2 Available --> 4.5.2
New Plugin v1.15.49 Available --> 1.15.49
到目前为止,我正在使用这个公式,但它只给出第一个小数结果,它不能处理 2 个小数,因为这些是软件版本号,而不是实数。
=REGEXEXTRACT(A1,"-*\d*\.?\d+")
试一试:
=REGEXEXTRACT(A1;"(-*\d*[\.?\d+]+)")
说明:
原文:
-*\d*\.?\d+
匹配项:
-*
:0
到 n
-
个字符后跟:
\d*
:0
到n
个十进制字符(0-9
),后接:
\.?
:0
到1
.
个字符(必须转义,否则表示“任意字符”),后面是:
\d+
: 1
到 n
个十进制字符。
我们现在:
- 将
\.?\d+
包装成“选择”([...]
)
- 并将
1
匹配到 n
(+
) 它的出现:[\.?\d+]+
- 另外(非强制性)将所有内容都包含在“捕获组”中(
(...)
)...我们还可以:提取其中的一部分。
你也可以试试
=regexextract(A1; "[0-9.]+")
如果你只想要v
之后的数字,
=REGEXEXTRACT(A1,"v([\d\.]+)")
\d
任意数字
\.
文字 .
[]+
匹配 [] 中的一个或多个任意字符
我正在尝试从单元格中的文本字符串中提取软件版本(纯数字和小数),但由于它有多个小数位,我无法获得完整结果。
示例(输入 --> 输出):
Plugin Version v4.5.2 Available --> 4.5.2
New Plugin v1.15.49 Available --> 1.15.49
到目前为止,我正在使用这个公式,但它只给出第一个小数结果,它不能处理 2 个小数,因为这些是软件版本号,而不是实数。
=REGEXEXTRACT(A1,"-*\d*\.?\d+")
试一试:
=REGEXEXTRACT(A1;"(-*\d*[\.?\d+]+)")
说明: 原文:
-*\d*\.?\d+
匹配项:
-*
:0
到n
-
个字符后跟:\d*
:0
到n
个十进制字符(0-9
),后接:\.?
:0
到1
.
个字符(必须转义,否则表示“任意字符”),后面是:\d+
:1
到n
个十进制字符。
我们现在:
- 将
\.?\d+
包装成“选择”([...]
) - 并将
1
匹配到n
(+
) 它的出现:[\.?\d+]+
- 另外(非强制性)将所有内容都包含在“捕获组”中(
(...)
)...我们还可以:提取其中的一部分。
你也可以试试
=regexextract(A1; "[0-9.]+")
如果你只想要v
之后的数字,
=REGEXEXTRACT(A1,"v([\d\.]+)")
\d
任意数字\.
文字.
[]+
匹配 [] 中的一个或多个任意字符