Я запутался в отношении переменных.
У меня есть код, где у меня есть следующая строка:
$search = $Name.SelectedItem.Split('-')[$($Name.SelectedItem.Split('-').Count-1)]+'*'
Эта строка больше ничего не делает, так как разделяет выбранный элемент (яработает с Dropdownbox) и переносит его в $ search.
Самое смешное, что он делает именно то, что я хочу.
Когда я печатаю $ search, результат можетнапример:
Rue de Rivoli *
Когда я продолжаю в коде и использую $ search по нескольким массивам, по какой-то причине он не работает, потому что ничего не находит вцикл foreach.У меня нет сообщения об ошибке, и даже Rue de Rivoli *, существующая в одном из массивов, ничего не находит.
Когда я заменяю приведенный выше код и прямо даю имя переменной $ search, как виднониже
$search = 'Rue de Rivoli*'
мой поиск в массиве работает.
Что мне здесь не хватает?Я делаю что-то не так, но я не знаю, что это, кто-то может мне помочь, пожалуйста, чтобы понять?
Большое спасибо,
Майк
В соответствии с просьбой,здесь больше кода.Это много, с чем приходится иметь дело, поэтому я сокращаю его.
Clear-Host
$search = $CreateNewUserFormDropDownBoxLocation.SelectedItem.Split('-')[$($CreateNewUserFormDropDownBoxLocation.SelectedItem.Split('-').Count-1)]+'*'
#$search = 'Rue de Rivoli*'
$AllLocations = (get-variable -Include USPennsylvaniaAve, USSixthStreet, USRodeoDrive, USOneMicrosoftWay,`
USNorthTantauAvenue, USMarketStreet, USMainStreet, USEmilyDrive,`
USCalle8, USBroadway, US18thStreetNW, UKOxfordStreet, UKDowningStreet,`
UKBondStreet, FRRuedeRivoli, FRChampsElysees, CHBahnhofstrasse,`
CA17thAvenue) | ? {$_.value -is [array]}
Foreach ($Array in $AllLocations)
{
if ($array.value -like $search)
{break}
}
$result = "`$$($array.name)"
$result
Это собирается стать функцией и больше ничего не делает, так как из выбранного элемента она разбирает ее на части и добавляет * позадиэто, поэтому я могу искать имя с подстановочным знаком.
У меня есть несколько массивов, и поэтому я включил только необходимые.Следующим шагом является цикл по массивам, и как только он находит элемент, он останавливается и выдает результат.Это мой тестовый код, и он работает и делает то, что я хочу, кроме строки после Clear-Host.Код правильно разрешен и добавлен в $ search, но не работает.Ниже этого кода строки у меня есть чит-строка, в которую я добавляю правильный результат в переменную, и он отлично работает.