You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Azure中如何提取KQL查询输出字符串的最后部分

实现方法

你可以通过解析JSON、拆分字符串的方式提取目标内容,以下是两种适配不同场景的KQL写法:

场景1:VPN站点可能有多个(展开所有站点)

resources
| where type == 'microsoft.network/virtualwans' and tags.CompanyTag =~ 'Company'
| extend WANname = name
| extend vpnSitesArray = parse_json(properties.vpnSites)  // 将字符串格式的JSON数组转为动态类型
| mv-expand vpnSitesArray  // 展开数组,每个VPN站点单独成一行
| extend vpnSiteId = tostring(vpnSitesArray.id)  // 提取站点的ID字符串
| extend VPNsiteName = split(vpnSiteId, '/')[-1]  // 按斜杠拆分ID,取最后一段
| project WANname, VPNsiteName  // 保留需要的字段输出

场景2:确认只有单个VPN站点(直接提取)

如果确定properties.vpnSites数组里只有一个元素,可以简化为:

resources
| where type == 'microsoft.network/virtualwans' and tags.CompanyTag =~ 'Company'
| extend WANname = name
| extend vpnSiteId = tostring(parse_json(properties.vpnSites)[0].id)  // 直接取数组第一个元素的ID
| extend VPNsiteName = split(vpnSiteId, '/')[-1]  // 拆分取最后一段
| project WANname, VPNsiteName

核心逻辑完全匹配你的思路:用split()函数按斜杠拆分ID字符串得到数组,再通过[-1]直接获取数组的最后一项。

内容的提问来源于stack exchange,提问作者Xyltic

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.29 04:15:12