regex - 字符串和正斜杠后面的字符串的正则表达式
问题描述
我正在尝试通过 az cli 提取 Azure 中的资源组名称。
某个资源组的完整路径如下所示:
/subscriptions/b049-1234-1256-125456-125/resourceGroups/Test_ResourceGroup
我试图只从完整字符串(存储在变量中)中提取“Test_ResourceGroup”,所以我认为代码类似于
$scope = /subscriptions/b049-1234-1256-125456-125/resourceGroups/Test_ResourceGroup
$resourcegroup = $scope -match 'regex'
但我在正则表达式方面很糟糕,而且并不擅长。额外的挑战是有时资源名称后面有更多的字符串或整数,例如
/subscriptions/b049-1234-1256-125456-125/resourceGroups/Test_ResourceGroup/specificnameofresource/blahblah
但同样,我只想要资源组名称。
解决方案
虽然纯正则表达式解决方案可能更快,但这更简单且更容易理解/修改。好吧,这是给我的。[咧嘴笑]
巧妙的是,final.Split()
会默默地失败,所以它适用于“字符串结尾”和字符串中的任何位置。
$TestList = @(
'/subscriptions/b049-1234-1256-125456-125/resourceGroups/Test_ResourceGroup/specificnameofresource/blahblah'
'/subscriptions/b049-1234-1256-125456-125/resourceGroups/ResourceGroupZiggity'
)
foreach ($TL_Item in $TestList)
{
($TL_Item -split 'resourcegroups/')[-1].Split('/')[0]
}
输出 ...
Test_ResourceGroup
ResourceGroupZiggity
推荐阅读
- java - 如何实例化一个类对象?
- android - Lint 在组装发布目标时发现致命错误
- javascript - Grant vs PassportJS vs OAuth2-client-js 哪一个用于移动应用登录?
- c# - ImageResizer 磁盘缓存 System.IO.IOException
- angular - 对 Material datepicker 使用自定义标题,其中 Material version < 6 和 Angular version < 6
- php - 我想计算给定主题的总价格并将其存储在数据库中
- html - 创建滑块但在绝对 div 的中心拟合图像时遇到问题
- json - Powershell:获取原始 JSON 的值
- c++ - 用户指定的参数来确定在大循环中调用哪个函数
- dictionary - 将 C# 字典转换为 C++ 映射