PowerShell - Сортировка сообщений по языку

Ответить
Аватара пользователя
anianhaseyo

PowerShell - Сортировка сообщений по языку

Сообщение anianhaseyo »

Добрый вечер!

Суть проблемы. Среди прочей корреспонденции на ящик поступает большое количество сообщений от азиатских партнёров: Китай, Япония и Корея. Как мне с помощью PowerShell отсортировать письма по принадлежности к языку? К самому серверу доступа у меня нет, робот пересылает мне на первичную обработку (сортировку) входящие письма, а я в свою очередь должен перенаправлять корреспонденцию в соответствующие отделы. Как-то так вот всё устроено. Может ли PowerShell "понять" что перед ним китайский или японский текст?
Аватара пользователя
greg zakharov

Re: PowerShell - Сортировка сообщений по языку

Сообщение greg zakharov »

Интересный вопрос. Для этого обычно используют различные языковые анализаторы или прибегают к машинному обучению. Теоретически можно сделать что вы просите, однако утверждать корректность предложенного варианта не буду, просто отошлю к чтению документации по Unicode.



Код:

Код: Выделить всё

@'
你好
여보세요
こんにちは
'@.Split("`n").ForEach{
  switch -regex ($_) {
    "[`u{4E00}-`u{9FFF}]" { '{0} - Китайский' -f $_ }
    "[`u{AC00}-`u{D7AF}]" { '{0} - Корейский' -f $_ }
    "[`u{3040}-`u{309F}]" { '{0} - Японский' -f $_ }
    # "[`u{30A0}-`u{30FF}]" { '{0} - Японский' -f $_ }
  }
}

Вроде бы ничего не напутал с кодами символов. Всех диапазонов не упомнишь, так что поковыряйтесь в доках, поправьте если что.
Ответить

Вернуться в «Скриптовые языки администрирования Windows»