1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210
|
^0 cero
1$ uno
1 un
2 dos
3 tres
4 cuatro
5 cinco
6 seis
7 siete
8 ocho
9 nueve
10 diez
11 once
12 doce
13 trece
14 catorce
15 quince
16 dieciséis
1(\d) dieci$1
20 veinte
21$ veintiuno
21 veintiún
22 veintidós
23 veintitrés
26 veintiséis
2(\d) veinti$1
30 treinta
40 cuarenta
50 cincuenta
60 sesenta
70 setenta
80 ochenta
90 noventa
(\d)(\d) $(\10) y $2
1(\d\d) cien[to $1]
500 quinientos
700 setecientos
900 novecientos
([579])(\d\d) $(\100) $2
(\d)(\d\d) $1cientos[ $2]
1(\d{3}) mil[ $1]
(\d{1,3})(\d{3}) $1 mil[ $2]
1(\d{6}) un millón[ $1]
(\d{1,6})(\d{6}) $1 millones[ $2]
1(\d{12}) un billón[ $1]
(\d{1,6})(\d{12}) $1 billones[ $2]
1(\d{18}) un trillón[ $1]
(\d{1,6})(\d{18}) $1 trillones[ $2]
1(\d{24}) un cuatrillón[ $1]
(\d{1,6})(\d{24}) $1 cuatrillones[ $2]
1(\d{30}) un quintillón[ $1]
(\d{1,6})(\d{30}) $1 quintillones[ $2]
# negative number
[-−](\d+) menos |$1
# decimals
([-−]?\d+)[.] $1| punto
([-−]?\d+)[,] $1| coma
([-−]?\d+[.,])([^0]\d) $1| |$2
([-−]?\d+[.,])(\d)(\d)(\d) |$1 |$2| |$3| |$4
([-−]?\d+[.,]\d*)(\d) $1| |$2
# currency
# unit/subunit singular/plural
us:([^,]*),([^,]*),([^,]*),([^,]*) \1
up:([^,]*),([^,]*),([^,]*),([^,]*) \2
ss:([^,]*),([^,]*),([^,]*),([^,]*) \3
sp:([^,]*),([^,]*),([^,]*),([^,]*) \4
ARS:(\D+) $(\1: peso argentino, pesos argentinos, centavo, centavos)
BOB:(\D+) $(\1: boliviano, bolivianos, centavo, centavos)
BZD:(\D+) $(\1: dólar beliceño, dólares beliceños, centavo, centavos)
CEC:(\D+) $(\1: peso convertible, pesos convertibles, centavo, centavos)
CHF:(\D+) $(\1: franco suizo, francos suizos, céntimo, céntimos)
CLP:(\D+) $(\1: peso chileno, pesos chilenos, centavo, centavos)
CNY:(\D+) $(\1: yuan renminbi, yuan renminbi, fen, fen)
COP:(\D+) $(\1: peso colombiano, pesos colombianos, centavo, centavos)
CRC:(\D+) $(\1: colón costarricense, colones costarricenses, céntimo, céntimos)
DOP:(\D+) $(\1: peso dominicano, pesos dominicanos, centavo, centavos)
ESP:(\D+) $(\1: peseta, pesetas, céntimo, céntimos)
EUR:(\D+) $(\1: euro, euros, céntimo, céntimos)
GBP:(\D+) $(\1: libra esterlina, libras esterlinas, penique, peniques)
GTQ:(\D+) $(\1: quetzal, quetzales, centavo, centavos)
HNL:(\D+) $(\1: lempira, lempiras, centavo, centavos)
JPY:(\D+) $(\1: yen, yenes, sen, sen)
MXN:(\D+) $(\1: peso mexicano, pesos mexicanos, centavo, centavos)
NIO:(\D+) $(\1: córdoba, córdobas, centavo, centavos)
PAB:(\D+) $(\1: balboa, balboas, céntimo, céntimos)
PEN:(\D+) $(\1: sol, soles, centavo, centavos)
PYG:(\D+) $(\1: guaraní, guaraníes, céntimo, céntimos)
SVC:(\D+) $(\1: colón salvadoreño, colones salvadoreños, céntimo, céntimos)
USD:(\D+) $(\1: dólar estadounidense, dólares estadounidenses, centavo, centavos)
UYU:(\D+) $(\1: peso uruguayo, pesos uruguayos, centésimo, centésimos)
VE[DS]:(\D+) $(\1: bolívar venezolano, bolívares venezolanos, centavo, centavos)
VEF:(\D+) $(\1: bolívar fuerte, bolívares fuertes, céntimo, céntimos)
# masculine to feminine conversion of "un" after millions,
# if "as?$" matches currency name
f:(.*ill)(.*),(.*) \1$(f:\2,\3) # don't modify un in millions
f:(.*)[uú]n([^a].*,|,)(.*as?) $(f:\1una\2\3) # un libra -> una libra
f:(.*ient)o(s.*),(.*as?) $(f:\1a\2,\3) # doscientos libra/libras -> doscientas
f:(.*),(.*) \1\2
"([A-Z]{3}) ([-−]?1)([.,]00?)?"$(f:|$2,$(\1:us))
"([A-Z]{3}) ([-−]?\d+0{6,})([.,]00?)?" $2 de$(\1:up)
"([A-Z]{3}) ([-−]?\d+)([.,]00?)?"$(f:|$2,$(\1:up))
"(CNY [-−]?\d+)[.,]10?" $1 $2 jiao
"(CNY [-−]?\d+)[.,](\d)0?" $1 $2 jiao
"(CNY [-−]?\d+[.,]\d)1" $1 $2 fen
"(CNY [-−]?\d+[.,]\d)(\d)" $1 $2 fen
"(([A-Z]{3}) [-−]?\d+)[.,](01)" $1 con |$(1)$(\2:ss)
"(([A-Z]{3}) [-−]?\d+)[.,](\d)" $1 con |$(\30)$(\2:sp)
"(([A-Z]{3}) [-−]?\d+)[.,](\d\d)" $1 con |$3$(\2:sp)
# ordinal
feminine:(.*ill)(.*) \1$(feminine:\2) # don't modify un in millions
feminine:(.*ient)o(s.*) $(feminine:\1a\2) # doscientos -> doscientas
feminine:(.*)[uú]no?([^a].*|$) $(feminine:\1una\2) # un -> una
feminine:(.*) \1
== feminine ==
(.*) $(feminine:|$1|)
== masculine ==
1 un
(.*) $1
== ordinal-masculine ==
(.*) $(ordinal \1)
== ordinal ==
1 primero
2 segundo
3 tercero
4 cuarto
5 quinto
6 sexto
7 séptimo
8 octavo
9 noveno
10 décimo
1([1-79]) decimo$(ordinal \1)
18 decimoctavo
20 vigésimo
2(\d) vigesimo$(ordinal \1)
30 trigésimo
40 cuadragésimo
50 quincuagésimo
60 sexagésimo
70 septuagésimo
80 octogésimo
90 nonagésimo
(\d)(\d) $(ordinal \10) $(ordinal \2)
100 centésimo
200 ducentésimo
300 tricentésimo
400 cuadringentésimo
500 quingentésimo
600 sexcentésimo
700 septingentésimo
800 octingentésimo
900 noningentésimo
(\d)(\d\d) $(ordinal \100) $(ordinal \2)
1(\d{3}) milésimo[ $(ordinal \1)]
(\d{1,3})(\d{3}) $1 milésimo[ $(ordinal \2)]
1(\d{6}) millonésimo[ $(ordinal \1)]
(\d{1,3})(\d{6}) $1 millonésimo[ $(ordinal \2)]
1(\d{9}) milmillonésimo[ $(ordinal \1)]
(\d{1,3})(\d{9}) $1 milmillonésimo[ $(ordinal \2)]
== ordinal-feminine ==
([-−]?\d+) $(ordinal-feminine $(ordinal-masculine \1))
(.*)o\b(.*) $(ordinal-feminine \1a\2)
(.*) \1
== ordinal-masculine-adjective ==
([-−]?\d+) $(ordinal-masculine-adjective $(ordinal-masculine \1))
(.*)decimoprimero \1undécimo
(.*)decimosegundo \1duodécimo
(.*(primer|tercer))o \1
(.*) \1
# ordinal abbreviation
== (ordinal)-number(-feminine|-masculine|-masculine-adjective)? ==
([-−]?\d+) \3$(ordinal-number $(\1\2 \3))
.*er .ᵉʳ
.*a .ª
.*o .º
== help ==
"" $(1)|, $(2), $(3)\n$(\0 feminine)$(\0 masculine)$(\0 ordinal-number-masculine)$(\0 ordinal-number-masculine-adjective)$(\0 ordinal-number-feminine)$(\0 ordinal-feminine)$(\0 ordinal-masculine)$(\0 ordinal-masculine-adjective)
(feminine|masculine|ordinal(-number)?(-feminine|-masculine)?(-adjective)?) \1: $(\1 1), $(\1 2), $(\1 3)\n
|