Поиск в строке всех слов длиной не менее 6 символов
Необходимо написать сценарий для поиска всех слов длиной не менее 6 символов в строке
Пример:
.\task5.ps1 "Tue Sep 15 2020 15:39:48 GMT+0300 (Belarus Local Time)"
Ожидаемый результат:
Belarus
Пробовал следующее:
через пробел разделить строку в массив и вывести только слова длиной более 6 символов. Что-то с синтаксисом не разобрался до конца
data = $args[0]
$pattern = '\w*[ ():]\w*'
$matches = [regex]::Matches($data, $pattern).Value
$str5 = $matches[-1] -split {$_ -eq " "} -join "" $str5 | Where-Object { $_ -match "a-z" } | ForEach-Object{ Matches[0] }
$str6 = $str5.GetEnumerator() | ? { $_.str5.Length -gt 2 }
$str6
Источник: Stack Overflow на русском