2013-02-26 9 views
3

Слишком много комбинаций полуширины, полной ширины, катакана, хираганы, кандзи и использования символов-заменителей (например, そ вместо ん).Как я могу стандартизировать японский, поэтому я могу выполнить проверку слов на запрещенные слова в Lua?

У Python есть пакет под названием jcconv, который поможет мне сделать то, что мне нужно. Я хочу преобразовать строки в стандартную форму, чтобы я мог спуститься по моему ограниченному списку слов.

Возможно ли это в Lua?

+2

Что делает слово запрещенным? Что это значит? –

+3

Вы можете начать с преобразования текста из Unicode NFC в NFKC. Это должно заботиться о множестве эквивалентов, таких как полуширина и полная ширина, разложенные формы и т. Д. Это не поможет вам с кубитами, такими как そ для ん или такими вещами (люди действительно это делают? Эти 2 персонажа не звучат одинаково!) – Celada

+0

Когда написано в катакана, ソ и ン похожи друг на друга – slek120

ответ

0

Для преобразования строк между hiragana, katakana и половинной шириной katakana вы можете сохранить соответствующие символы алфавита в разных таблицах и добавить отображение между ними (либо по индексу, либо по клавише).

Вот как это делает jcconv, судя по источнику (link).

Например, если вы хотите конвертировать хираган в катакана вы могли бы сделать так:

  • создал таблицу, в которой каждый элемент определяются как [hiragana] = katakana.
  • повторите строковый символ символом и замените, если это так (я нашел небольшую библиотеку, которая выполняет именно это: utf8.lua предоставляет функцию подстановки, которая принимает таблицу сопоставления).

 Смежные вопросы

  • Нет связанных вопросов^_^