gpt4 book ai didi

substring - 返回字符串中第5个空格和第6个空格之间的字符串

转载 作者:行者123 更新时间:2023-12-03 13:48:50 27 4
gpt4 key购买 nike

我有一列看起来像这样的字符串:

Target Host: dcmxxxxxxc032.erc.nam.fm.com Target Name: dxxxxxxgsc047.erc.nam.fm.com Filesystem /u01 has 4.98% available space - fallen below warning (20) or critical (5) threshold.



列名是[描述]

我想返回的子字符串是(dxxxxxxgsc047.erc.nam.fm.com)

此数据的唯一一致性是,所需的字符串出现在字符串中出现的空格的第5次和第6次之间,并且在短语“目标名称:”之后,子字符串的长度有所不同,但始终以另一个字符串结尾,因此我尝试在第5个和第6个空格之间获取子字符串。

我试过了
MID([Description],((FIND([Description],"Target Name: "))+13),FIND([Description]," ",((FIND([Description],"Target Name"))+14)))

但这是行不通的。

(编辑:我们使用Tableau 8.2,仅Tableau 9的功能不能成为解决方案的一部分,谢谢!)

预先感谢您的帮助。

最佳答案

在Tableau 9中,您可以在公式中使用正则表达式,这使任务更加简单:

REGEXP_EXTRACT([Description], "Target Name: (.*?) ")

或者,在Tableau 9中,您可以使用新的FINDNTH函数:
MID(
[Description],
FINDNTH([Description]," ", 5) + 1,
FINDNTH([Description]," ", 6) - FINDNTH([Description]," ", 5) - 1
)

在Tableau 9之前,您必须使用类似于您尝试过的字符串操作方法,只需要非常小心地进行算术运算并提供正确的参数( MID中的第三个参数是长度,而不是结束字符的索引,因此我们需要减去起始字符的索引):
MID(
[Description]
, FIND([Description], "Target Name:") + 13
, FIND([Description], " ", FIND([Description], "Target Name:") + 15)
- (FIND([Description], "Target Name:") + 13)
)

关于substring - 返回字符串中第5个空格和第6个空格之间的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29835535/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com