file-online-preview/server/libreoffice/share/numbertext/uk.sor

203 lines
6.7 KiB
Java
Raw Normal View History

2021-06-23 02:26:22 +00:00
^0 нуль
1 один
2 два
3 три
4 чотири
5$ пять
5 пят
6$ шість
6 шіст
7 сім
8 вісім
9$ девять
9 девят
10 десять
11 одинадцять
12 дванадцять
13 тринадцять
14 чотирнадцять
15 пятнадцать
16 шістнадцять
17 сімнадцять
18 вісімнадцять
19 девятнадцять
([23])(\d) $1|дцять[ $2]
4(\d) сорок[ $1]
9(\d) девяносто[ $1]
(\d)(\d) $1десят[ $2]
1(\d\d) сто[ $1]
2(\d\d) двісті[ $1]
([34])(\d\d) $1ста[ $2]
(\d)(\d\d) $1сот[ $2]
(1|\d?[02-9]1)(\d{3}) $(f:$1) тисяча[ $2]
([234]|\d?[02-9][234])(\d{3}) $(f:$1) тисячі[ $2]
(\d{1,3})(\d{3}) $1| тисяч[ $2]
(1|\d?[02-9]1)(\d{6}) $1 мільйон[ $2]
([234]|\d?[02-9][234])(\d{6}) $1 мільйона[ $2]
(\d{1,3})(\d{6}) $1 мільйонов[ $2]
(1|\d?[02-9]1)(\d{9}) $1 мільярд[ $2]
([234]|\d?[02-9][234])(\d{9}) $1 мільярда[ $2]
(\d{1,3})(\d{9}) $1 мільярдов[ $2]
(1|\d?[02-9]1)(\d{12}) $1 трильйон[ $2]
([234]|\d?[02-9][234])(\d{12}) $1 трильйона[ $2]
(\d{1,3})(\d{12}) $1 трильйонов[ $2]
(1|\d?[02-9]1)(\d{15}) $1 квадрильйон[ $2]
([234]|\d?[02-9][234])(\d{15}) $1 квадрильйона[ $2]
(\d{1,3})(\d{15}) $1 квадрильйонов[ $2]
(1|\d?[02-9]1)(\d{18}) $1 квінтильйон[ $2]
([234]|\d?[02-9][234])(\d{18}) $1 квінтильйона[ $2]
(\d{1,3})(\d{18}) $1 квінтильйонов[ $2]
(1|\d?[02-9]1)(\d{21}) $1 секстильйон[ $2]
([234]|\d?[02-9][234])(\d{21}) $1 секстильйона[ $2]
(\d{1,3})(\d{21}) $1 секстильйонов[ $2]
(1|\d?[02-9]1)(\d{24}) $1 септильйон[ $2]
([234]|\d?[02-9][234])(\d{24}) $1 септильйона[ $2]
(\d{1,3})(\d{24}) $1 септильйонов[ $2]
# negative numbers
[-]1 мінус один
[-](\d+) мінус |$1
# decimals
"([-]?)[.,](\d+)" $(\10.\2)
"[-]1[.,]" мінус одна ціла
"([-]?\d+[02-9]1|1)[.,]" $(f:|$1) ціла
"([-]?\d+)[.,]" $(f:|$1) цілий
"([-]?\d+[.,])1" $1| и одна десята
"([-]?\d+[.,])(\d)" $1| и $(f:|$2) десятий
"([-]?\d+[.,])([02-9]1)" $1| и $(f:|$2) сота
"([-]?\d+[.,])(\d\d)" $1| и $(f:|$2) сотий
"([-]?\d+[.,])(\d[02-9]1)" $1| и $(f:|$2) тисячна
"([-]?\d+[.,])(\d{3})" $1| и $(f:|$2) тисячний
"([-]?\d+[.,])(\d)(\d)(\d)(\d)" $1| |$2 |$3 |$4 |$5
"([-]?\d+[.,]\d*)(\d)" $1| |$2
# female conversion
f:(.*)один \1одна
f:(.*)два \1дві
f:(.*) \1
# possessive (1-999) - used in ordinals
"pos:(.* )?од(ин|на) ?" [$(pos:\1)]одного
"pos:(.* )?дв[аі] ?" [$(pos:\1)]двох
"pos:(.* )?три ?" [$(pos:\1)]трьох
"pos:(.* )?чотири ?" [$(pos:\1)]чотирьох
"pos:(.* )?вісім ?" [$(pos:\1)]восьми
"pos:(.* )?([а-я]+)ь ?" [$(pos:\1)]\2и
"pos:(.* )?сорок ?" [$(pos:\1)]сорока
"pos:(.* )?([а-я]+)десят ?" [$(pos:\1)]\2десяти
"pos:(.* )?([а-я]*)сто ?" [$(pos:\1)]\2сто
"pos:(.*)двести ?" \1двохсот
"pos:(.*)иста ?" \1ьохсот
"pos:(.*)осемьсот ?" \1осьмисот
"pos:(.*[^и])сот ?" \1исот
pos:(.*) \1
# currency
# unit/subunit
us:([^,]*),([^,]*),([^,]*),([^,]*),([^,]*),([^,]*) \1
up:([^,]*),([^,]*),([^,]*),([^,]*),([^,]*),([^,]*) \2
ug:([^,]*),([^,]*),([^,]*),([^,]*),([^,]*),([^,]*) \3
ss:([^,]*),([^,]*),([^,]*),([^,]*),([^,]*),([^,]*) \4
sp:([^,]*),([^,]*),([^,]*),([^,]*),([^,]*),([^,]*) \5
sg:([^,]*),([^,]*),([^,]*),([^,]*),([^,]*),([^,]*) \6
EUR:(\D+) $(\1: євро, євро, євро, цент, цента, центів)
GBP:(\D+) $(\1: фунт стерлінгів, фунта стерлінгів, фунтів стерлінгів, пенні, пенса, пенсів)
RUB:(\D+) $(\1: рубль, рубля, рублів, копійка, копійки, копійок)
UAH:(\D+) $(\1: гривня, гривні, гривень, копійка, копійки, копійок)
USD:(\D+) $(\1: долар США, долара США, доларів США, цент, цента, центів)
"(UAH) ([-]?1)([.,]00?)?" $(f:$2)|$(\1:us)
"(UAH) ([-]?\d*[02-9]1)([.,]00?)?" $(f:$2)|$(\1:us)
"(UAH) ([-]?[234])([.,]00?)?" $(f:$2)|$(\1:up)
"(UAH) ([-]?\d*[02-9][234])([.,]00?)?" $(f:$2)|$(\1:up)
"(UAH) ([-]?\d+)([.,]00?)?" $(f:$2)|$(\1:ug)
"([A-Z]{3}) ([-]?1)([.,]00?)?" $2|$(\1:us)
"([A-Z]{3}) ([-]?\d*[02-9]1)([.,]00?)?" $2|$(\1:us)
"([A-Z]{3}) ([-]?[234])([.,]00?)?" $2|$(\1:up)
"([A-Z]{3}) ([-]?\d*[02-9][234])([.,]00?)?" $2|$(\1:up)
"([A-Z]{3}) ([-]?\d+)([.,]00?)?" $2|$(\1:ug)
"((RUB) [-]?\d+)[.,]([02-9])1" $1 [$(\30) ]одна$(\2:ss)
"((RUB) [-]?\d+)[.,]([02-9])2" $1 [$(\30) ]двi$(\2:sp)
"((UAH) [-]?\d+)[.,]([02-9])1" $1 [$(\30) ]одна$(\2:ss)
"((UAH) [-]?\d+)[.,]([02-9])2" $1 [$(\30) ]двi$(\2:sp)
"(([A-Z]{3}) [-]?\d+)[.,](01)" $1 |$(1)$(\2:ss)
"((EUR|GBP|USD) [-]?\d+)[.,]([02-9]2)" $1 $3|$(\2:sp)
"(([A-Z]{3}) [-]?\d+)[.,]([02-9][234])" $1 |$3$(\2:sp)
"(([A-Z]{3}) [-]?\d+)[.,](\d)" $1 |$(\30)$(\2:sg)
"(([A-Z]{3}) [-]?\d+)[.,](\d\d)" $1 |$3$(\2:sg)
== ordinal-feminine ==
0 нульова
([-]?\d+) $(ordinal-feminine |$1)
(.*)один \1перша
(.*)два \1друга
(.*)три \1третя
(.*)чотири \1четверта
(.*)шість \1шоста
(.*)ть \1та
(.*)вісім \1восьма
(.*)сім \1сьома
(.*)к \1кова
(.*)осто \1оста
(.*)сто \1сота
(.*)двісті \1двохсота
(.*)иста \1ьохсота
(.*)шістсот \2шестисота
(.*)вісімсот \1восьмисота
(.*)сімсот \2семисота
(.*)сот \1исота
"одна тисяча" тисячна
"(.* )тисяч[аі]?" $(pos:\1)тисячна
"один (\w+ль\w+)" \1на
"(.* )([а-я]+ль[а-я]+)(а|ов)" $(pos:\1)\2на
"(.* )([а-я]+ль[а-я]+)" $(pos:\1)\2на
(.*) \1а
== ordinal-neuter ==
([-]?\d+) $(ordinal-neuter |$(ordinal-feminine \1))
(.*)а \1е
(.*)я \1є
(.*) \1
== ordinal(-masculine)? ==
([-]?\d+) $(ordinal-masculine |$(ordinal-feminine \2))
(.*)а \2ий
(.*)я \2ій
(.*) \2
== ordinal-number-feminine ==
(\d+) \1-$(ordinal-number-neuter |$(ordinal-feminine \1))
== ordinal-number-neuter ==
(\d+) \1-$(ordinal-number-neuter |$(ordinal-neuter \1))
# use last two letters to get a consonant
.*(..) \1
== ordinal-number(-masculine)? ==
(\d+) \2-й
== help ==
"" |$(1)|, |$(2)|, |$(3)|\n$(help ordinal-feminine)$(help ordinal-masculine)$(help ordinal-neuter)$(help ordinal-number-feminine)$(help ordinal-number-masculine)$(help ordinal-number-neuter)
(.*) \1: |$(\1 1)|, |$(\1 2)|, |$(\1 3)|\n