ConvertFrom-MimeString

MVP по Exchange, и просто хорошему человеку Павлу Нагаеву (кстати рекомендую подписаться на его блог) понадобилось в скрипте привести заголовок сообщений из MIME в читабельный вид. Дело в том что заголовки сообщений на русском языке хранятся в виде подобном этому:

=?windows-1251?B?x+Dq4Ocg8uXr5fTu7eA=?=

Поэтому родилась вот такая вот функция:

function ConvertFrom-MimeString ([string[]]$Strings=@()) { foreach ($Text in ($Strings + @($input))) { if ($Text -match "=\?(?<Encoding>.+?)\?B\?(?<Text>.+)\?=") { Write-Debug "Converting from $($matches.Encoding)..." $Bytes = [convert]::FromBase64String($matches.Text) [System.Text.Encoding]::GetEncoding($matches.Encoding).getString($Bytes) } } }

Можно передать ей строку как аргумент, а можно и из конвейера:

mime

Опубликовано в Learn, PowerShell, Practice, Scripting. Комментарии к записи ConvertFrom-MimeString отключены

Scripting Games: Advanced PowerShell — Event 10

cards

В последней задачке подразделения Advanced мы писали симулятор игры Black Jack, или по-русски «Очко» 🙂 Честно говоря когда я читал задание первый раз, после того как легко расщелкал все предыдущие, я подумал — «вот и засада с пушным зверьком…» 😉 Но всё оказалось куда проще чем казалось в начале 🙂

Читать далее…

Опубликовано в Learn, PowerShell, Scripting, Scripting Games. Комментарии к записи Scripting Games: Advanced PowerShell — Event 10 отключены