Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   Сортировка сообщений по языку (http://forum.oszone.net/showthread.php?t=346888)

anianhaseyo 30-10-2020 20:20 2938229

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

greg zakharov 30-10-2020 21:07 2938231

Интересный вопрос. Для этого обычно используют различные языковые анализаторы или прибегают к машинному обучению. Теоретически можно сделать что вы просите, однако утверждать корректность предложенного варианта не буду, просто отошлю к чтению документации по 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 $_ }
  }
}

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


Время: 23:37.

Время: 23:37.
© OSzone.net 2001-