#powershell
#powershell
Вопрос:
Мне удается получить вывод из Invoke-Webrequest для переменной, как показано ниже. Теперь я хотел бы отфильтровать только значение 6895, как я могу добиться фильтра с помощью SourceIndex?
Внутренний текст SourceIndex
131 8962
134 6847
137 6895
237 3831
240 1807
243 1141
347 7368
354 4822
357 9037
574 383 831
583 621 807
592 281 141
Ответ №1:
признаюсь, я понятия не имею, что вы имеете в виду how can I achieve the filter using sourceIndex?
. [румянец]
однако объект, содержащий целевое значение, легко найти с помощью .Where()
метода сбора. [усмешка]
что это делает…
- создает набор данных для работы с
замените все это вызовом вашего набора данных, используяImport-CSV
или извлекая его из вашегоI-WR
вызова. - задает целевой текст
- фильтрует коллекцию с помощью
.Where()
метода collection - присваивает вышеуказанное
$Result
переменной - отображает это на экране
код …
#region >>> fake reading in a CSV file
# in real life, repalce this entire block with a call to Import-CSV or the info from elsewhere
$IWR_Result = @'
sourceIndex, innerText
131, 8962
134, 6847
137, 6895
237, 3831
240, 1807
243, 1141
347, 7368
354, 4822
357, 9037
574, 383 831
583, 621 807
592, 281 141
'@ | ConvertFrom-Csv
#endregion >>> fake reading in a CSV file
$TargetInnerText = '6895'
$Result = $IWR_Result.Where({$_.InnerText -eq $TargetInnerText})
$Result
вывод…
sourceIndex innerText
----------- ---------
137 6895