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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/entity-framework/4.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 选择单元格中的特定文本-谷歌工作表_Google Sheets_Google Sheets Formula - Fatal编程技术网

Google sheets 选择单元格中的特定文本-谷歌工作表

Google sheets 选择单元格中的特定文本-谷歌工作表,google-sheets,google-sheets-formula,Google Sheets,Google Sheets Formula,我想从单元格中提取一段特定的文本 单元格内容如下所示; “修改”:“1595515574184000”,“所有者id”:“xxxx”,“优先级id”:“xxx”,“严重性id”:“xxx”,“状态id”:“xxxx”,“类型id”:“xxxx”,“用户电子邮件”:“xxx”,“用户id”:“xxxx”,“验证人id”:“xxxxx” 所有内容都以这种格式显示,但是,项目的顺序并不总是相同的,因此诸如left(),right()&mid()之类的函数对我来说不起作用 我也尝试过使用split()函

我想从单元格中提取一段特定的文本

单元格内容如下所示;
“修改”:“1595515574184000”,“所有者id”:“xxxx”,“优先级id”:“xxx”,“严重性id”:“xxx”,“状态id”:“xxxx”,“类型id”:“xxxx”,“用户电子邮件”:“xxx”,“用户id”:“xxxx”,“验证人id”:“xxxxx”

所有内容都以这种格式显示,但是,项目的顺序并不总是相同的,因此诸如
left()
right()
&
mid()
之类的函数对我来说不起作用

我也尝试过使用
split()
函数,但它会在不同的列中生成一个项目数组

在上面的单元格中,我想提取每个“修改”标记后的16位数字

如果有人有任何建议或反馈,请告诉我

谢谢

试试:

=REGEXEXTRACT(A1, "\d+")

或:


我想补充上面player0的答案(已经正确了)。当我们已经确定想要提取的字符串的长度时,我总是喜欢使用特定的重复次数,而不是使用
+
*
。通过这种方式,我们可以始终获得我们正在寻找的确切答案,它还将充当数据检查器,因为如果它不遵循严格的模式
“modified”:“
,它将出错。我会用这个:

=REGEXEXTRACT(A1, """modified"":""(\d{16})""")

如果您不希望严格,那么player0的第二个答案应该很好。

\d+不会在数字之后导入更多内容,也不会导入少于数字块的内容。如果有任何可能导致错误的数字少于16位或超过16位,则将其指定给\d{16}将只会适得其反-没有为输入@player0完全提取它。我知道这是重复特定次数的缺点。我使用它是因为OP提到了数字的长度,而且,这也是检查提取的字符串是否在预期输出范围内的一种好方法,因为如果数字不完全是16,它将出错。这就是为什么我在我们已经确定长度时提到了
。这将同时起到数据检查的作用。这取决于OP是否适用于他想要使用的用例。这只是我个人的喜好,当涉及到这样的数据。拇指向上!完美地工作
=REGEXEXTRACT(A1, """modified"":""(\d{16})""")