Я пытаюсь создать функцию, которая сравнивает, соответствует ли начало входной строки одной из возможностей, сгенерированных из комбинаций в нескольких System.Arrays
. Результатом этой функции будет возвращенный объект с входными данными GroupName
, которые мы получили, и если это действительное имя или нет, $true/$false
.
Массив1:
Country
-------
BEL
NLD
Массив2:
Color
----
Green
Red
Массив3:
Type Object
---- ------
Fruit Banana
Veggetables Aubergine
Fruit Appel
Veggetables Carrot
Fruit Peer
Созданный в функции список для проверки достоверности:
BEL Green-Fruit-Banana
BEL Green-Fruit-Appel
BEL Green-Fruit-Peer
BEL Green-Vegetables-Aubergine
BEL Green-Vegetables-Carrot
NLD Green-Fruit-Banana
NLD Green-Fruit-Appel
NLD Green-Fruit-Peer
NLD Green-Vegetables-Aubergine
NLD Green-Vegetables-Carrot
BEL Red-Fruit-Banana
BEL Red-Fruit-Appel
BEL Red-Fruit-Peer
BEL Red-Vegetables-Aubergine
BEL Red-Vegetables-Carrot
NLD Red-Fruit-Banana
NLD Red-Fruit-Appel
NLD Red-Fruit-Peer
NLD Red-Vegetables-Aubergine
NLD Red-Vegetables-Carrot
Код, который у меня уже есть, предназначен для создания объекта. Но я не знаю, как лучше всего создать этот список в функции и заполнить значение Valid
.
Function Compare-Names {
[CmdletBinding()]
param(
[Parameter(Mandatory=$True,ValueFromPipeline=$True)]
[string[]]$GroupName
)
PROCESS {
# Generate all options
<# Fill Valid $true or false here #>
foreach ($Group in $GroupName) {
$obj = New-Object -TypeName psobject -Property ([ordered] @{
'GroupName' = $Group;
'Valid' = $Valid;
})
Write-Output $obj
}
}
}