Tableau api 提取表格中两个单词之间的单词

Tableau api 提取表格中两个单词之间的单词,tableau-api,calculation,Tableau Api,Calculation,我在一列中的数据如下所示 Environment: PROD_A JobName: MY JOB NAME 1 MemName: Some_Script_names 我的目标是创建一个计算字段,用于获取JobName。 在上面的示例中。输出应该是我的工作名1 这是我在表格中的代码- MID([Description],FIND([Description],"JobName: ")+9, FIND([Description],"MemName: ")-FIND([Description],"Jo

我在一列中的数据如下所示

Environment: PROD_A
JobName: MY JOB NAME 1
MemName: Some_Script_names
我的目标是创建一个计算字段,用于获取JobName。 在上面的示例中。输出应该是我的工作名1

这是我在表格中的代码-

MID([Description],FIND([Description],"JobName: ")+9,
FIND([Description],"MemName: ")-FIND([Description],"JobName: ")-9)
上述逻辑与下面的excel函数相同。它基本上会找到第一个单词和最后一个单词,然后选择介于两者之间的一个

=MID(A1,SEARCH("JobName: ",A1)+9,SEARCH("MemName",A1)-SEARCH("JobName: ",A1)-9)
发行-
表格显示的是空白数据。不知道我的逻辑哪里错了。非常感谢您的帮助。

我看到您评论说文本位于一个单元格中,而不是您所述的一列

这将查找JobName并使用该位置加上其长度作为起始位置,然后查找MemName作为结束位置(并计算它们之间的字符数)


我看到您评论说文本在一个单元格中,而不是在您所述的一列中

这将查找JobName并使用该位置加上其长度作为起始位置,然后查找MemName作为结束位置(并计算它们之间的字符数)


您可以使用正则表达式函数(取决于您的数据源)。尝试以下方法:REGEXP_EXTRACT([Data],'JobName:(.*)

您可能能够使用REGEX函数(取决于您的数据源)。尝试以下操作:REGEXP_EXTRACT([Data],'JobName:(.*)

以下表格计算有效,这假设在MY_JOB_NAME_1和“MemName:”后面没有空格:


下面的tableau calc有效,它假设MY_JOB_NAME_1和“MemName”后面没有空格:


样本中的每一行是单独的一行还是全部在一行?@Bernardo single row样本中的每一行是单独的一行还是全部在一行?@Bernardo single row
=MID(A1,FIND("JobName: ",A1)+LEN("JobName: "),FIND("MemName",A1,FIND("JobName: ",A1)+LEN("JobName: ")+1)-(FIND("JobName: ",A1)+Len("JobName: ")))
MID([Text], 
FIND([Text],'JobName: ')+10, 
FIND( 
MID([Text], 
FIND([Text],'JobName: ')+10)," ")-9)