es.sor 5.4 KB

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