Search/replace 在库斯托
Search/replace in Kusto
用例:从 Azure Application Insights 结果中删除字符串
这是一个简单的问题,但在线示例很少,作为新用户,并且在 Regex 方面的经验(但学习)有限,我正在努力。
如何删除以下 table 中 | Articles
的所有实例,这是我从 Azure Application Insights 导出的示例?
这没有用:
| extend name=replace(@' | Articles', @'', name)
我对微软文档中的一个示例进行了多次尝试,但没有成功(我知道这种解释是不正确的):
| extend str=strcat(' | Articles', tostring(name))
| extend replaced=replace(@' | Articles', @'', str)
感谢您的任何见解。
您最初的尝试不起作用的原因是 replace()
的第一个参数是一个正则表达式,如果您在 is 中有管道 (|
),您将需要要正确转义它,请使用反斜杠 (\
).
例如:
datatable(s:string)
[
"Article 1 | Articles",
"Article 2",
"Article 3 | Articles"
]
| extend replaced=replace(@' \| Articles', @'', s)
理想情况下,如果可能,您将选择不需要使用正则表达式的解决方案。
例如:
datatable(s:string)
[
"Article 1 | Articles",
"Article 2",
"Article 3 | Articles"
]
| extend i = indexof(s, " | Articles")
| project s = case(i == -1, s, substring(s, 0, i))
用例:从 Azure Application Insights 结果中删除字符串
这是一个简单的问题,但在线示例很少,作为新用户,并且在 Regex 方面的经验(但学习)有限,我正在努力。
如何删除以下 table 中 | Articles
的所有实例,这是我从 Azure Application Insights 导出的示例?
这没有用:
| extend name=replace(@' | Articles', @'', name)
我对微软文档中的一个示例进行了多次尝试,但没有成功(我知道这种解释是不正确的):
| extend str=strcat(' | Articles', tostring(name))
| extend replaced=replace(@' | Articles', @'', str)
感谢您的任何见解。
您最初的尝试不起作用的原因是 replace()
的第一个参数是一个正则表达式,如果您在 is 中有管道 (|
),您将需要要正确转义它,请使用反斜杠 (\
).
例如:
datatable(s:string)
[
"Article 1 | Articles",
"Article 2",
"Article 3 | Articles"
]
| extend replaced=replace(@' \| Articles', @'', s)
理想情况下,如果可能,您将选择不需要使用正则表达式的解决方案。
例如:
datatable(s:string)
[
"Article 1 | Articles",
"Article 2",
"Article 3 | Articles"
]
| extend i = indexof(s, " | Articles")
| project s = case(i == -1, s, substring(s, 0, i))