Private/ConvertFrom-LegacyHVTag.ps1
|
function ConvertFrom-LegacyHVTag { [CmdletBinding()] [OutputType([HyperVVMTag])] param( [Parameter(Mandatory)] [AllowEmptyString()] [string] $Notes ) if ($Notes -notmatch '<Env>|<Service>|<DependsOn>') { return $null } $tag = [HyperVVMTag]::new() $tag.Environment = @([regex]::Matches($Notes, '<Env>([^<]*)</Env>') | ForEach-Object { $_.Groups[1].Value } | Where-Object { $_ }) $tag.Service = @([regex]::Matches($Notes, '<Service>([^<]*)</Service>') | ForEach-Object { $_.Groups[1].Value } | Where-Object { $_ }) $tag.DependsOn = @([regex]::Matches($Notes, '<DependsOn>([^<]*)</DependsOn>') | ForEach-Object { $_.Groups[1].Value } | Where-Object { $_ }) return $tag } |