|
1 | 1 | # Auto-generated by Tools/build/generate_re_casefix.py. |
2 | 2 |
|
3 | | -# Maps the code of lowercased character to codes of different lowercased |
4 | | -# characters which have the same uppercase. |
5 | | -_EXTRA_CASES = { |
6 | | - # LATIN SMALL LETTER I: LATIN SMALL LETTER DOTLESS I |
7 | | - 0x0069: (0x0131,), # 'i': 'ı' |
| 3 | +# Maps the code of a folded character to codes of characters which are |
| 4 | +# folded to it (as by _sre.unicode_tolower), except its uppercase (as by |
| 5 | +# _sre.unicode_toupper) when that uppercase is folded back to it. |
| 6 | +_CASE_PREIMAGE_FIXES = { |
| 7 | + # LATIN SMALL LETTER I: LATIN CAPITAL LETTER I WITH DOT ABOVE, LATIN SMALL LETTER DOTLESS I |
| 8 | + 0x0069: (0x0130, 0x0131), # 'i': 'İı' |
| 9 | + # LATIN SMALL LETTER K: KELVIN SIGN |
| 10 | + 0x006b: (0x212a,), # 'k': 'K' |
8 | 11 | # LATIN SMALL LETTER S: LATIN SMALL LETTER LONG S |
9 | 12 | 0x0073: (0x017f,), # 's': 'ſ' |
10 | | - # MICRO SIGN: GREEK SMALL LETTER MU |
11 | | - 0x00b5: (0x03bc,), # 'µ': 'μ' |
12 | | - # LATIN SMALL LETTER DOTLESS I: LATIN SMALL LETTER I |
13 | | - 0x0131: (0x0069,), # 'ı': 'i' |
14 | | - # LATIN SMALL LETTER LONG S: LATIN SMALL LETTER S |
15 | | - 0x017f: (0x0073,), # 'ſ': 's' |
16 | | - # COMBINING GREEK YPOGEGRAMMENI: GREEK SMALL LETTER IOTA, GREEK PROSGEGRAMMENI |
17 | | - 0x0345: (0x03b9, 0x1fbe), # '\u0345': 'ιι' |
| 13 | + # LATIN SMALL LETTER SHARP S: LATIN CAPITAL LETTER SHARP S |
| 14 | + 0x00df: (0x1e9e,), # 'ß': 'ẞ' |
| 15 | + # LATIN SMALL LETTER A WITH RING ABOVE: ANGSTROM SIGN |
| 16 | + 0x00e5: (0x212b,), # 'å': 'Å' |
| 17 | + # LATIN SMALL LETTER DZ WITH CARON: LATIN CAPITAL LETTER D WITH SMALL LETTER Z WITH CARON |
| 18 | + 0x01c6: (0x01c5,), # 'dž': 'Dž' |
| 19 | + # LATIN SMALL LETTER LJ: LATIN CAPITAL LETTER L WITH SMALL LETTER J |
| 20 | + 0x01c9: (0x01c8,), # 'lj': 'Lj' |
| 21 | + # LATIN SMALL LETTER NJ: LATIN CAPITAL LETTER N WITH SMALL LETTER J |
| 22 | + 0x01cc: (0x01cb,), # 'nj': 'Nj' |
| 23 | + # LATIN SMALL LETTER DZ: LATIN CAPITAL LETTER D WITH SMALL LETTER Z |
| 24 | + 0x01f3: (0x01f2,), # 'dz': 'Dz' |
18 | 25 | # GREEK SMALL LETTER IOTA WITH DIALYTIKA AND TONOS: GREEK SMALL LETTER IOTA WITH DIALYTIKA AND OXIA |
19 | 26 | 0x0390: (0x1fd3,), # 'ΐ': 'ΐ' |
20 | 27 | # GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND TONOS: GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND OXIA |
|
23 | 30 | 0x03b2: (0x03d0,), # 'β': 'ϐ' |
24 | 31 | # GREEK SMALL LETTER EPSILON: GREEK LUNATE EPSILON SYMBOL |
25 | 32 | 0x03b5: (0x03f5,), # 'ε': 'ϵ' |
26 | | - # GREEK SMALL LETTER THETA: GREEK THETA SYMBOL |
27 | | - 0x03b8: (0x03d1,), # 'θ': 'ϑ' |
| 33 | + # GREEK SMALL LETTER THETA: GREEK THETA SYMBOL, GREEK CAPITAL THETA SYMBOL |
| 34 | + 0x03b8: (0x03d1, 0x03f4), # 'θ': 'ϑϴ' |
28 | 35 | # GREEK SMALL LETTER IOTA: COMBINING GREEK YPOGEGRAMMENI, GREEK PROSGEGRAMMENI |
29 | 36 | 0x03b9: (0x0345, 0x1fbe), # 'ι': '\u0345ι' |
30 | 37 | # GREEK SMALL LETTER KAPPA: GREEK KAPPA SYMBOL |
|
35 | 42 | 0x03c0: (0x03d6,), # 'π': 'ϖ' |
36 | 43 | # GREEK SMALL LETTER RHO: GREEK RHO SYMBOL |
37 | 44 | 0x03c1: (0x03f1,), # 'ρ': 'ϱ' |
38 | | - # GREEK SMALL LETTER FINAL SIGMA: GREEK SMALL LETTER SIGMA |
39 | | - 0x03c2: (0x03c3,), # 'ς': 'σ' |
40 | 45 | # GREEK SMALL LETTER SIGMA: GREEK SMALL LETTER FINAL SIGMA |
41 | 46 | 0x03c3: (0x03c2,), # 'σ': 'ς' |
42 | 47 | # GREEK SMALL LETTER PHI: GREEK PHI SYMBOL |
43 | 48 | 0x03c6: (0x03d5,), # 'φ': 'ϕ' |
44 | | - # GREEK BETA SYMBOL: GREEK SMALL LETTER BETA |
45 | | - 0x03d0: (0x03b2,), # 'ϐ': 'β' |
46 | | - # GREEK THETA SYMBOL: GREEK SMALL LETTER THETA |
47 | | - 0x03d1: (0x03b8,), # 'ϑ': 'θ' |
48 | | - # GREEK PHI SYMBOL: GREEK SMALL LETTER PHI |
49 | | - 0x03d5: (0x03c6,), # 'ϕ': 'φ' |
50 | | - # GREEK PI SYMBOL: GREEK SMALL LETTER PI |
51 | | - 0x03d6: (0x03c0,), # 'ϖ': 'π' |
52 | | - # GREEK KAPPA SYMBOL: GREEK SMALL LETTER KAPPA |
53 | | - 0x03f0: (0x03ba,), # 'ϰ': 'κ' |
54 | | - # GREEK RHO SYMBOL: GREEK SMALL LETTER RHO |
55 | | - 0x03f1: (0x03c1,), # 'ϱ': 'ρ' |
56 | | - # GREEK LUNATE EPSILON SYMBOL: GREEK SMALL LETTER EPSILON |
57 | | - 0x03f5: (0x03b5,), # 'ϵ': 'ε' |
| 49 | + # GREEK SMALL LETTER OMEGA: OHM SIGN |
| 50 | + 0x03c9: (0x2126,), # 'ω': 'Ω' |
58 | 51 | # CYRILLIC SMALL LETTER VE: CYRILLIC SMALL LETTER ROUNDED VE |
59 | 52 | 0x0432: (0x1c80,), # 'в': 'ᲀ' |
60 | 53 | # CYRILLIC SMALL LETTER DE: CYRILLIC SMALL LETTER LONG-LEGGED DE |
|
69 | 62 | 0x044a: (0x1c86,), # 'ъ': 'ᲆ' |
70 | 63 | # CYRILLIC SMALL LETTER YAT: CYRILLIC SMALL LETTER TALL YAT |
71 | 64 | 0x0463: (0x1c87,), # 'ѣ': 'ᲇ' |
72 | | - # CYRILLIC SMALL LETTER ROUNDED VE: CYRILLIC SMALL LETTER VE |
73 | | - 0x1c80: (0x0432,), # 'ᲀ': 'в' |
74 | | - # CYRILLIC SMALL LETTER LONG-LEGGED DE: CYRILLIC SMALL LETTER DE |
75 | | - 0x1c81: (0x0434,), # 'ᲁ': 'д' |
76 | | - # CYRILLIC SMALL LETTER NARROW O: CYRILLIC SMALL LETTER O |
77 | | - 0x1c82: (0x043e,), # 'ᲂ': 'о' |
78 | | - # CYRILLIC SMALL LETTER WIDE ES: CYRILLIC SMALL LETTER ES |
79 | | - 0x1c83: (0x0441,), # 'ᲃ': 'с' |
80 | | - # CYRILLIC SMALL LETTER TALL TE: CYRILLIC SMALL LETTER TE, CYRILLIC SMALL LETTER THREE-LEGGED TE |
81 | | - 0x1c84: (0x0442, 0x1c85), # 'ᲄ': 'тᲅ' |
82 | | - # CYRILLIC SMALL LETTER THREE-LEGGED TE: CYRILLIC SMALL LETTER TE, CYRILLIC SMALL LETTER TALL TE |
83 | | - 0x1c85: (0x0442, 0x1c84), # 'ᲅ': 'тᲄ' |
84 | | - # CYRILLIC SMALL LETTER TALL HARD SIGN: CYRILLIC SMALL LETTER HARD SIGN |
85 | | - 0x1c86: (0x044a,), # 'ᲆ': 'ъ' |
86 | | - # CYRILLIC SMALL LETTER TALL YAT: CYRILLIC SMALL LETTER YAT |
87 | | - 0x1c87: (0x0463,), # 'ᲇ': 'ѣ' |
88 | | - # CYRILLIC SMALL LETTER UNBLENDED UK: CYRILLIC SMALL LETTER MONOGRAPH UK |
89 | | - 0x1c88: (0xa64b,), # 'ᲈ': 'ꙋ' |
90 | 65 | # LATIN SMALL LETTER S WITH DOT ABOVE: LATIN SMALL LETTER LONG S WITH DOT ABOVE |
91 | 66 | 0x1e61: (0x1e9b,), # 'ṡ': 'ẛ' |
92 | | - # LATIN SMALL LETTER LONG S WITH DOT ABOVE: LATIN SMALL LETTER S WITH DOT ABOVE |
93 | | - 0x1e9b: (0x1e61,), # 'ẛ': 'ṡ' |
94 | | - # GREEK PROSGEGRAMMENI: COMBINING GREEK YPOGEGRAMMENI, GREEK SMALL LETTER IOTA |
95 | | - 0x1fbe: (0x0345, 0x03b9), # 'ι': '\u0345ι' |
96 | | - # GREEK SMALL LETTER IOTA WITH DIALYTIKA AND OXIA: GREEK SMALL LETTER IOTA WITH DIALYTIKA AND TONOS |
97 | | - 0x1fd3: (0x0390,), # 'ΐ': 'ΐ' |
98 | | - # GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND OXIA: GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND TONOS |
99 | | - 0x1fe3: (0x03b0,), # 'ΰ': 'ΰ' |
100 | | - # CYRILLIC SMALL LETTER MONOGRAPH UK: CYRILLIC SMALL LETTER UNBLENDED UK |
101 | | - 0xa64b: (0x1c88,), # 'ꙋ': 'ᲈ' |
102 | | - # LATIN SMALL LIGATURE LONG S T: LATIN SMALL LIGATURE ST |
103 | | - 0xfb05: (0xfb06,), # 'ſt': 'st' |
104 | | - # LATIN SMALL LIGATURE ST: LATIN SMALL LIGATURE LONG S T |
105 | | - 0xfb06: (0xfb05,), # 'st': 'ſt' |
106 | | -} |
107 | | - |
108 | | -# Maps the code of a lowercased character to codes of characters which |
109 | | -# are lowercased to it (as by _sre.unicode_tolower), except its uppercase |
110 | | -# (as by _sre.unicode_toupper) when that uppercase is lowercased back to it. |
111 | | -_CASE_PREIMAGE_FIXES = { |
112 | | - # LATIN SMALL LETTER I: LATIN CAPITAL LETTER I WITH DOT ABOVE |
113 | | - 0x0069: (0x0130,), # 'i': 'İ' |
114 | | - # LATIN SMALL LETTER K: KELVIN SIGN |
115 | | - 0x006b: (0x212a,), # 'k': 'K' |
116 | | - # LATIN SMALL LETTER SHARP S: LATIN CAPITAL LETTER SHARP S |
117 | | - 0x00df: (0x1e9e,), # 'ß': 'ẞ' |
118 | | - # LATIN SMALL LETTER A WITH RING ABOVE: ANGSTROM SIGN |
119 | | - 0x00e5: (0x212b,), # 'å': 'Å' |
120 | | - # LATIN SMALL LETTER DZ WITH CARON: LATIN CAPITAL LETTER D WITH SMALL LETTER Z WITH CARON |
121 | | - 0x01c6: (0x01c5,), # 'dž': 'Dž' |
122 | | - # LATIN SMALL LETTER LJ: LATIN CAPITAL LETTER L WITH SMALL LETTER J |
123 | | - 0x01c9: (0x01c8,), # 'lj': 'Lj' |
124 | | - # LATIN SMALL LETTER NJ: LATIN CAPITAL LETTER N WITH SMALL LETTER J |
125 | | - 0x01cc: (0x01cb,), # 'nj': 'Nj' |
126 | | - # LATIN SMALL LETTER DZ: LATIN CAPITAL LETTER D WITH SMALL LETTER Z |
127 | | - 0x01f3: (0x01f2,), # 'dz': 'Dz' |
128 | | - # GREEK SMALL LETTER THETA: GREEK CAPITAL THETA SYMBOL |
129 | | - 0x03b8: (0x03f4,), # 'θ': 'ϴ' |
130 | | - # GREEK SMALL LETTER OMEGA: OHM SIGN |
131 | | - 0x03c9: (0x2126,), # 'ω': 'Ω' |
132 | 67 | # GREEK SMALL LETTER ALPHA WITH PSILI AND YPOGEGRAMMENI: GREEK CAPITAL LETTER ALPHA WITH PSILI AND PROSGEGRAMMENI |
133 | 68 | 0x1f80: (0x1f88,), # 'ᾀ': 'ᾈ' |
134 | 69 | # GREEK SMALL LETTER ALPHA WITH DASIA AND YPOGEGRAMMENI: GREEK CAPITAL LETTER ALPHA WITH DASIA AND PROSGEGRAMMENI |
|
183 | 118 | 0x1fc3: (0x1fcc,), # 'ῃ': 'ῌ' |
184 | 119 | # GREEK SMALL LETTER OMEGA WITH YPOGEGRAMMENI: GREEK CAPITAL LETTER OMEGA WITH PROSGEGRAMMENI |
185 | 120 | 0x1ff3: (0x1ffc,), # 'ῳ': 'ῼ' |
| 121 | + # CYRILLIC SMALL LETTER MONOGRAPH UK: CYRILLIC SMALL LETTER UNBLENDED UK |
| 122 | + 0xa64b: (0x1c88,), # 'ꙋ': 'ᲈ' |
| 123 | + # LATIN SMALL LIGATURE ST: LATIN SMALL LIGATURE LONG S T |
| 124 | + 0xfb06: (0xfb05,), # 'st': 'ſt' |
186 | 125 | } |
0 commit comments