Not found locally for perluniprops. Try Google search
perluniprops - Index of Unicode Version 13.0.0 character properties in Perl
📚 This document provides information about the portion of the Unicode database that deals with character properties, that is the portion that is defined on single code points. ("Other information in the Unicode data base" below briefly mentions other data that Unicode provides.)
🧩 Perl can provide access to all non-provisional Unicode character properties, though not all are enabled by default. The omitted ones are the Unihan properties (accessible via the CPAN module Unicode::Unihan) and certain deprecated or Unicode-internal properties. (An installation may choose to recompile Perl's tables to change this. See "Unicode character properties that are NOT accepted by Perl".)
🎯 For most purposes, access to Unicode properties from the Perl core is through regular expression matches, as described in the next section. For some special purposes, and to access the properties that are not suitable for regular expression matching, all the Unicode character properties that Perl handles are accessible via the standard Unicode::UCD module, as described in the section "Properties accessible through Unicode::UCD". Perl also provides some additional extensions and short-cut synonyms for Unicode properties. This document merely lists all available properties and does not attempt to explain what each property really means. There is a brief description of each Perl extension; see "Other Properties" in perlunicode for more information on these. There is some detail about Blocks, Scripts, General_Category, and Bidi_Class in perlunicode, but to find out about the intricacies of the official Unicode properties, refer to the Unicode standard. A good starting place is <http://www.unicode.org/reports/tr44/>. Note that you can define your own properties; see "User-Defined Character Properties" in perlunicode.
🎯 The Perl regular expression "\p{}" and "\P{}" constructs give access to most of the Unicode character properties. The table below shows all these constructs, both single and compound forms. Compound forms consist of two components, separated by an equals sign or a colon. The first component is the property name, and the second component is the particular value of the property to match against, for example, "\p{Script_Extensions: Greek}" and "\p{Script_Extensions=Greek}" both mean to match characters whose Script_Extensions property value is Greek. ("Script_Extensions" is an improved version of the "Script" property.)
🔗 Single forms, like "\p{Greek}", are mostly Perl-defined shortcuts for their equivalent compound forms. The table shows these equivalences. (In our example, "\p{Greek}" is a just a shortcut for "\p{Script_Extensions=Greek}"). There are also a few Perl-defined single forms that are not shortcuts for a compound form. One such is "\p{Word}". These are also listed in the table. In parsing these constructs, Perl always ignores Upper/lower case differences everywhere within the {braces}. Thus "\p{Greek}" means the same thing as "\p{greek}". But note that changing the case of the "p" or "P" before the left brace completely changes the meaning of the construct, from "match" (for "\p{}") to "doesn't match" (for "\P{}"). Casing in this document is for improved legibility. Also, white space, hyphens, and underscores are normally ignored everywhere between the {braces}, and hence can be freely added or removed even if the "/x" modifier hasn't been specified on the regular expression. But in the table below a 'T' at the beginning of an entry means that tighter (stricter) rules are used for that entry:
⚠️ Some properties are considered obsolete by Unicode, but still available. There are several varieties of obsolescence:
🟢 Stabilized A property may be stabilized. Such a determination does not indicate that the property should or should not be used; instead it is a declaration that the property will not be maintained nor extended for newly encoded characters. Such properties are marked with an 'S' in the table. 💀 Deprecated A property may be deprecated, perhaps because its original intent has been replaced by another property, or because its specification was somehow defective. This means that its use is strongly discouraged, so much so that a warning will be issued if used, unless the regular expression is in the scope of a "no warnings 'deprecated';" statement. A 'D' flags each such entry in the table, and the entry there for the longest, most descriptive version of the property will give the reason it is deprecated, and perhaps advice. Perl may issue such a warning, even for properties that aren't officially deprecated by Unicode, when there used to be characters or code points that were matched by them, but no longer. This is to warn you that your program may not work like it did on earlier Unicode releases. A deprecated property may be made unavailable in a future Perl version, so it is best to move away from them. A deprecated property may also be stabilized, but this fact is not shown. 🕰️ Obsolete Properties marked with an 'O' in the table are considered (plain) obsolete. Generally this designation is given to properties that Unicode once used for internal purposes (but not any longer). 🟡 Discouraged This is not actually a Unicode-specified obsolescence, but applies to certain Perl extensions that are present for backwards compatibility, but are discouraged from being used. These are not obsolete, but their meanings are not stable. Future Unicode versions could force any of these extensions to be removed without warning, replaced by another property with the same name that means something different. An 'X' flags each such entry in the table. Use the equivalent shown instead. In particular, matches in the Block property have single forms defined by Perl that begin with "In_", "Is_", or even with no prefix at all, like all DISCOURAGED forms, these are not stable. For example, "\p{Block=Deseret}" can currently be written as "\p{In_Deseret}", "\p{Is_Deseret}", or "\p{Deseret}". But, a new Unicode version may come along that would force Perl to change the meaning of one or more of these, and your program would no longer be correct. Currently there are no such conflicts with the form that begins "In_", but there are many with the other two shortcuts, and Unicode continues to define new properties that begin with "In", so it's quite possible that a conflict will occur in the future. The compound form is guaranteed to not become obsolete, and its meaning is clearer anyway. See "Blocks" in perlunicode for more information about this. User-defined properties must begin with "In" or "Is". These override any Unicode property of the same name.📊 The table below has two columns. The left column contains the "\p{}" constructs to look up, possibly preceded by the flags mentioned above; and the right column contains information about them, like a description, or synonyms. The table shows both the single and compound forms for each property that has them. If the left column is a short name for a property, the right column will give its longer, more descriptive name; and if the left column is the longest name, the right column will show any equivalent shortest name, in both single and compound forms if applicable. If braces are not needed to specify a property (e.g., "\pL"), the left column contains both forms, with and without braces. The right column will also caution you if a property means something different than what might normally be expected. All single forms are Perl extensions; a few compound forms are as well, and are noted as such. Numbers in (parentheses) indicate the total number of Unicode code points matched by the property. For the entries that give the longest, most descriptive version of the property, the count is followed by a list of some of the code points matched by it. The list includes all the matched characters in the 0-255 range, enclosed in the familiar [brackets] the same as a regular expression bracketed character class. Following that, the next few higher matching ranges are also given. To avoid visual ambiguity, the SPACE character is represented as "\x20". For emphasis, those properties that match no code points at all are listed as well in a separate section following the table. Most properties match the same code points regardless of whether "/i" case-insensitive matching is specified or not. But a few properties are affected. These are shown with the notation "(/i=other_property)" in the second column. Under case-insensitive matching they match the same code points as the property other_property. There is no description given for most non-Perl defined properties (See <http://www.unicode.org/reports/tr44/> for that). For compactness, '*' is used as a wildcard instead of showing all possible combinations. For example, entries like:
\p{Gc: *} \p{General_Category: *}
mean that 'Gc' is a synonym for 'General_Category', and anything that is valid for the latter is also valid for the former. Similarly,
\p{Is_*} \p{*}
means that if and only if, for example, "\p{Foo}" exists, then "\p{Is_Foo}" and "\p{IsFoo}" are also valid and all mean the same thing. And similarly, "\p{Foo=Bar}" means the same as "\p{Is_Foo=Bar}" and "\p{IsFoo=Bar}". "*" here is restricted to something not beginning with an underscore. Also, in binary properties, 'Yes', 'T', and 'True' are all synonyms for 'Y'. And 'No', 'F', and 'False' are all synonyms for 'N'. The table shows 'Y*' and 'N*' to indicate this, and doesn't have separate entries for the other possibilities. Note that not all properties which have values 'Yes' and 'No' are binary, and they have all their values spelled out without using this wild card, and a "NOT" clause in their description that highlights their not being binary. These also require the compound form to match them, whereas true binary properties have both single and compound forms available. Note that all non-essential underscores are removed in the display of the short names below.
📝 Legend summary:
| NAME | INFO |
|---|---|
\p{Adlam} | \p{Script_Extensions=Adlam} (Short: \p{Adlm}; NOT \p{Block=Adlam}) (89) |
\p{Adlm} | \p{Adlam} (= \p{Script_Extensions=Adlam}) (NOT \p{Block=Adlam}) (89) |
⚠️ \p{Aegean_Numbers} | \p{Block=Aegean_Numbers} (64) |
🔍 \p{Age: 1.1} | \p{Age=V1_1} (33_979) |
\p{Age: V1_1} | Code point's usage introduced in version 1.1 (33_979: U+0000..01F5, U+01FA..0217, U+0250..02A8, U+02B0..02DE, U+02E0..02E9, U+0300..0345 ...) |
🔍 \p{Age: 2.0} | \p{Age=V2_0} (144_521) |
\p{Age: V2_0} | Code point's usage was introduced in version 2.0; See also Property 'Present_In' (144_521: U+0591..05A1, U+05A3..05AF, U+05C4, U+0F00..0F47, U+0F49..0F69, U+0F71..0F8B ...) |
🔍 \p{Age: 2.1} | \p{Age=V2_1} (2) |
\p{Age: V2_1} | Code point's usage was introduced in version 2.1; See also Property 'Present_In' (2: U+20AC, U+FFFC) |
🔍 \p{Age: 3.0} | \p{Age=V3_0} (10_307) |
\p{Age: V3_0} | Code point's usage was introduced in version 3.0; See also Property 'Present_In' (10_307: U+01F6..01F9, U+0218..021F, U+0222..0233, U+02A9..02AD, U+02DF, U+02EA..02EE ...) |
🔍 \p{Age: 3.1} | \p{Age=V3_1} (44_978) |
\p{Age: V3_1} | Code point's usage was introduced in version 3.1; See also Property 'Present_In' (44_978: U+03F4..03F5, U+FDD0..FDEF, U+10300..1031E, U+10320..10323, U+10330..1034A, U+10400..10425 ...) |
🔍 \p{Age: 3.2} | \p{Age=V3_2} (1016) |
\p{Age: V3_2} | Code point's usage was introduced in version 3.2; See also Property 'Present_In' (1016: U+0220, U+034F, U+0363..036F, U+03D8..03D9, U+03F6, U+048A..048B ...) |
🔍 \p{Age: 4.0} | \p{Age=V4_0} (1226) |
\p{Age: V4_0} | Code point's usage was introduced in version 4.0; See also Property 'Present_In' (1226: U+0221, U+0234..0236, U+02AE..02AF, U+02EF..02FF, U+0350..0357, U+035D..035F ...) |
🔍 \p{Age: 4.1} | \p{Age=V4_1} (1273) |
\p{Age: V4_1} | Code point's usage was introduced in version 4.1; See also Property 'Present_In' (1273: U+0237..0241, U+0358..035C, U+03FC..03FF, U+04F6..04F7, U+05A2, U+05C5..05C7 ...) |
🔍 \p{Age: 5.0} | \p{Age=V5_0} (1369) |
\p{Age: V5_0} | Code point's usage was introduced in version 5.0; See also Property 'Present_In' (1369: U+0242..024F, U+037B..037D, U+04CF, U+04FA..04FF, U+0510..0513, U+05BA ...) |
🔍 \p{Age: 5.1} | \p{Age=V5_1} (1624) |
\p{Age: V5_1} | Code point's usage was introduced in version 5.1; See also Property 'Present_In' (1624: U+0370..0373, U+0376..0377, U+03CF, U+0487, U+0514..0523, U+0606..060A ...) |
🔍 \p{Age: 5.2} | \p{Age=V5_2} (6648) |
\p{Age: V5_2} | Code point's usage was introduced in version 5.2; See also Property 'Present_In' (6648: U+0524..0525, U+0800..082D, U+0830..083E, U+0900, U+094E, U+0955 ...) |
🔍 \p{Age: 6.0} | \p{Age=V6_0} (2088) |
\p{Age: V6_0} | Code point's usage was introduced in version 6.0; See also Property 'Present_In' (2088: U+0526..0527, U+0620, U+065F, U+0840..085B, U+085E, U+093A..093B ...) |
🔍 \p{Age: 6.1} | \p{Age=V6_1} (732) |
\p{Age: V6_1} | Code point's usage was introduced in version 6.1; See also Property 'Present_In' (732: U+058F, U+0604, U+08A0, U+08A2..08AC, U+08E4..08FE, U+0AF0 ...) |
🔍 \p{Age: 6.2} | \p{Age=V6_2} (1) |
\p{Age: V6_2} | Code point's usage was introduced in version 6.2; See also Property 'Present_In' (1: U+20BA) |
🔍 \p{Age: 6.3} | \p{Age=V6_3} (5) |
\p{Age: V6_3} | Code point's usage was introduced in version 6.3; See also Property 'Present_In' (5: U+061C, U+2066..2069) |
🔍 \p{Age: 7.0} | \p{Age=V7_0} (2834) |
\p{Age: V7_0} | Code point's usage was introduced in version 7.0; See also Property 'Present_In' (2834: U+037F, U+0528..052F, U+058D..058E, U+0605, U+08A1, U+08AD..08B2 ...) |
🔍 \p{Age: 8.0} | \p{Age=V8_0} (7716) |
\p{Age: V8_0} | Code point's usage was introduced in version 8.0; See also Property 'Present_In' (7716: U+08B3..08B4, U+08E3, U+0AF9, U+0C5A, U+0D5F, U+13F5 ...) |
🔍 \p{Age: 9.0} | \p{Age=V9_0} (7500) |
\p{Age: V9_0} | Code point's usage was introduced in version 9.0; See also Property 'Present_In' (7500: U+08B6..08BD, U+08D4..08E2, U+0C80, U+0D4F, U+0D54..0D56, U+0D58..0D5E ...) |
🔍 \p{Age: 10.0} | \p{Age=V10_0} (8518) |
\p{Age: V10_0} | Code point's usage was introduced in version 10.0; See also Property 'Present_In' (8518: U+0860..086A, U+09FC..09FD, U+0AFA..0AFF, U+0D00, U+0D3B..0D3C, U+1CF7 ...) |
🔍 \p{Age: 11.0} | \p{Age=V11_0} (684) |
\p{Age: V11_0} | Code point's usage was introduced in version 11.0; See also Property 'Present_In' (684: U+0560, U+0588, U+05EF, U+07FD..07FF, U+08D3, U+09FE ...) |
🔍 \p{Age: 12.0} | \p{Age=V12_0} (554) |
\p{Age: V12_0} | Code point's usage was introduced in version 12.0; See also Property 'Present_In' (554: U+0C77, U+0E86, U+0E89, U+0E8C, U+0E8E..0E93, U+0E98 ...) |
🔍 \p{Age: 12.1} | \p{Age=V12_1} (1) |
\p{Age: V12_1} | Code point's usage was introduced in version 12.1; See also Property 'Present_In' (1: U+32FF) |
🔍 \p{Age: 13.0} | \p{Age=V13_0} (5930) |
\p{Age: V13_0} | Code point's usage was introduced in version 13.0; See also Property 'Present_In' (5930: U+08BE..08C7, U+0B55, U+0D04, U+0D81, U+1ABF..1AC0, U+2B97 ...) |
\p{Age: NA} | \p{Age=Unassigned} (830_606 plus all above-Unicode code points) |
\p{Age: Unassigned} | Code point's usage has not been assigned in any Unicode release thus far. (Short: \p{Age=NA}) (830_606 plus all above-Unicode code points: U+0378..0379, U+0380..0383, U+038B, U+038D, U+03A2, U+0530 ...) |
\p{Aghb} | \p{Caucasian_Albanian} (= \p{Script_Extensions=Caucasian_Albanian}) (NOT \p{Block=Caucasian_Albanian}) (53) |
\p{AHex} | \p{PosixXDigit} (= \p{ASCII_Hex_Digit=Y}) (22) |
\p{AHex: *} | \p{ASCII_Hex_Digit: *} |
\p{Ahom} | \p{Script_Extensions=Ahom} (NOT \p{Block=Ahom}) (58) |
⚠️ \p{Alchemical} | \p{Alchemical_Symbols} (= \p{Block=Alchemical_Symbols}) (128) |
⚠️ \p{Alchemical_Symbols} | \p{Block=Alchemical_Symbols} (Short: \p{InAlchemical}) (128) |
\p{All} | All code points, including those above Unicode. |
Same as qr/./s (1_114_112 plus all above-Unicode code points: U+0000..infinity)
\p{Alnum} → \p{XPosixAlnum} (133_525)\p{Alpha} → \p{XPosixAlpha} (= \p{Alphabetic=Y}) (132_875)\p{Alpha: *} → \p{Alphabetic: *}\p{Alphabetic} → \p{XPosixAlpha} (= \p{Alphabetic=Y}) (132_875)\p{Alphabetic: N*} (Short: \p{Alpha=N}, \P{Alpha}) (981_237 plus all above-Unicode code points: [\x00-\x20!"#\$\%&\'\(\)*+,\-.\/0-9:;<=>?\@\[\\\]\^_`\{\|\}~\x7f-\xa9\xab-\xb4\xb6-\xb9\xbb-\xbf\xd7\xf7], U+02C2..02C5, U+02D2..02DF, U+02E5..02EB, U+02ED, U+02EF..0344 ...)\p{Alphabetic: Y*} (Short: \p{Alpha=Y}, \p{Alpha}) (132_875: [A-Za-z\xaa\xb5\xba\xc0-\xd6\xd8-\xf6\xf8-\xff], U+0100..02C1, U+02C6..02D1, U+02E0..02E4, U+02EC, U+02EE ...)\p{Alphabetic_PF} → \p{Alphabetic_Presentation_Forms} (= \p{Block=Alphabetic_Presentation_Forms}) (80)\p{Alphabetic_Presentation_Forms} → \p{Block=Alphabetic_Presentation_Forms} (Short: \p{InAlphabeticPF}) (80)\p{Anatolian_Hieroglyphs} → \p{Script_Extensions=Anatolian_Hieroglyphs} (Short: \p{Hluw}; NOT \p{Block=Anatolian_Hieroglyphs}) (583)\p{Ancient_Greek_Music} → \p{Ancient_Greek_Musical_Notation} (= \p{Block=Ancient_Greek_Musical_Notation}) (80)\p{Ancient_Greek_Musical_Notation} → \p{Block=Ancient_Greek_Musical_Notation} (Short: \p{InAncientGreekMusic}) (80)\p{Ancient_Greek_Numbers} → \p{Block=Ancient_Greek_Numbers} (80)\p{Ancient_Symbols} → \p{Block=Ancient_Symbols} (64)\p{Any} → All Unicode code points (1_114_112: U+0000..10FFFF)\p{Arab} → \p{Arabic} (= \p{Script_Extensions=Arabic}) (NOT \p{Block=Arabic}) (1335)\p{Arabic} → \p{Script_Extensions=Arabic} (Short: \p{Arab}; NOT \p{Block=Arabic}) (1335)\p{Arabic_Ext_A} → \p{Arabic_Extended_A} (= \p{Block=Arabic_Extended_A}) (96)\p{Arabic_Extended_A} → \p{Block=Arabic_Extended_A} (Short: \p{InArabicExtA}) (96)\p{Arabic_Math} → \p{Arabic_Mathematical_Alphabetic_Symbols} (= \p{Block=Arabic_Mathematical_Alphabetic_Symbols}) (256)\p{Arabic_Mathematical_Alphabetic_Symbols} → \p{Block=Arabic_Mathematical_Alphabetic_Symbols} (Short: \p{InArabicMath}) (256)\p{Arabic_PF_A} → \p{Arabic_Presentation_Forms_A} (= \p{Block=Arabic_Presentation_Forms_A}) (688)\p{Arabic_PF_B} → \p{Arabic_Presentation_Forms_B} (= \p{Block=Arabic_Presentation_Forms_B}) (144)\p{Arabic_Presentation_Forms_A} → \p{Block=Arabic_Presentation_Forms_A} (Short: \p{InArabicPFA}) (688)\p{Arabic_Presentation_Forms_B} → \p{Block=Arabic_Presentation_Forms_B} (Short: \p{InArabicPFB}) (144)\p{Arabic_Sup} → \p{Arabic_Supplement} (= \p{Block=Arabic_Supplement}) (48)\p{Arabic_Supplement} → \p{Block=Arabic_Supplement} (Short: \p{InArabicSup}) (48)\p{Armenian} → \p{Script_Extensions=Armenian} (Short: \p{Armn}; NOT \p{Block=Armenian}) (96)\p{Armi} → \p{Imperial_Aramaic} (= \p{Script_Extensions=Imperial_Aramaic}) (NOT \p{Block=Imperial_Aramaic}) (31)\p{Armn} → \p{Armenian} (= \p{Script_Extensions=Armenian}) (NOT \p{Block=Armenian}) (96)\p{Arrows} → \p{Block=Arrows} (112)\p{ASCII} → \p{Block=Basic_Latin} (128)\p{ASCII_Hex_Digit} → \p{PosixXDigit} (= \p{ASCII_Hex_Digit=Y}) (22)\p{ASCII_Hex_Digit: N*} (Short: \p{AHex=N}, \P{AHex}) (1_114_090 plus all above-Unicode code points: [\x00-\x20!"#\$\%&\'\(\)*+,\-.\/:;<=>?\@G-Z\[\\\]\^_`g-z\{\|\}~\x7f-\xff], U+0100..infinity)\p{ASCII_Hex_Digit: Y*} (Short: \p{AHex=Y}, \p{AHex}) (22: [0-9A-Fa-f])\p{Assigned} → All assigned code points (283_440: U+0000..0377, U+037A..037F, U+0384..038A, U+038C, U+038E..03A1, U+03A3..052F ...)\p{Avestan} → \p{Script_Extensions=Avestan} (Short: \p{Avst}; NOT \p{Block=Avestan}) (61)\p{Avst} → \p{Avestan} (= \p{Script_Extensions=Avestan}) (NOT \p{Block=Avestan}) (61)\p{Bali} → \p{Balinese} (= \p{Script_Extensions=Balinese}) (NOT \p{Block=Balinese}) (121)\p{Balinese} → \p{Script_Extensions=Balinese} (Short: \p{Bali}; NOT \p{Block=Balinese}) (121)\p{Bamu} → \p{Bamum} (= \p{Script_Extensions=Bamum}) (NOT \p{Block=Bamum}) (657)\p{Bamum} → \p{Script_Extensions=Bamum} (Short: \p{Bamu}; NOT \p{Block=Bamum}) (657)\p{Bamum_Sup} → \p{Bamum_Supplement} (= \p{Block=Bamum_Supplement}) (576)\p{Bamum_Supplement} → \p{Block=Bamum_Supplement} (Short: \p{InBamumSup}) (576)\p{Basic_Latin} → \p{ASCII} (= \p{Block=Basic_Latin}) (128)\p{Bass} → \p{Bassa_Vah} (= \p{Script_Extensions=Bassa_Vah}) (NOT \p{Block=Bassa_Vah}) (36)\p{Bassa_Vah} → \p{Script_Extensions=Bassa_Vah} (Short: \p{Bass}; NOT \p{Block=Bassa_Vah}) (36)\p{Batak} → \p{Script_Extensions=Batak} (Short: \p{Batk}; NOT \p{Block=Batak}) (56)\p{Batk} → \p{Batak} (= \p{Script_Extensions=Batak}) (NOT \p{Block=Batak}) (56)\p{Bc: *} → \p{Bidi_Class: *}\p{Beng} → \p{Bengali} (= \p{Script_Extensions=Bengali}) (NOT \p{Block=Bengali}) (113)\p{Bengali} → \p{Script_Extensions=Bengali} (Short: \p{Beng}; NOT \p{Block=Bengali}) (113)\p{Bhaiksuki} → \p{Script_Extensions=Bhaiksuki} (Short: \p{Bhks}; NOT \p{Block=Bhaiksuki}) (97)\p{Bhks} → \p{Bhaiksuki} (= \p{Script_Extensions=Bhaiksuki}) (NOT \p{Block=Bhaiksuki}) (97)\p{Bidi_C} → \p{Bidi_Control} (= \p{Bidi_Control=Y}) (12)\p{Bidi_C: *} → \p{Bidi_Control: *}\p{Bidi_Class: AL} → \p{Bidi_Class=Arabic_Letter} (1698)\p{Bidi_Class: AN} → \p{Bidi_Class=Arabic_Number} (61)\p{Bidi_Class: Arabic_Letter} (Short: \p{Bc=AL}) (1698: U+0608, U+060B, U+060D, U+061B..064A, U+066D..066F, U+0671..06D5 ...)\p{Bidi_Class: Arabic_Number} (Short: \p{Bc=AN}) (61: U+0600..0605, U+0660..0669, U+066B..066C, U+06DD, U+08E2, U+10D30..10D39 ...)\p{Bidi_Class: B} → \p{Bidi_Class=Paragraph_Separator} (7)\p{Bidi_Class: BN} → \p{Bidi_Class=Boundary_Neutral} (4016)\p{Bidi_Class: Boundary_Neutral} (Short: \p{Bc=BN}) (4016: [^\t\n\cK\f\r\x1c-\x7e\x85\xa0-\xac\xae-\xff], U+180E, U+200B..200D, U+2060..2065, U+206A..206F, U+FDD0..FDEF ...)\p{Bidi_Class: Common_Separator} (Short: \p{Bc=CS}) (15: [,.\/: \xa0], U+060C, U+202F, U+2044, U+FE50, U+FE52 ...)\p{Bidi_Class: CS} → \p{Bidi_Class=Common_Separator} (15)\p{Bidi_Class: EN} → \p{Bidi_Class=European_Number} (168)\p{Bidi_Class: ES} → \p{Bidi_Class=European_Separator} (12)\p{Bidi_Class: ET} → \p{Bidi_Class=European_Terminator} (92)\p{Bidi_Class: European_Number} (Short: \p{Bc=EN}) (168: [0-9\xb2-\xb3\xb9], U+06F0..06F9, U+2070, U+2074..2079, U+2080..2089, U+2488..249B ...)\p{Bidi_Class: European_Separator} (Short: \p{Bc=ES}) (12: [+\-], U+207A..207B, U+208A..208B, U+2212, U+FB29, U+FE62..FE63 ...)\p{Bidi_Class: European_Terminator} (Short: \p{Bc=ET}) (92: [#\$\%\xa2-\xa5\xb0-\xb1], U+058F, U+0609..060A, U+066A, U+09F2..09F3, U+09FB ...)\p{Bidi_Class: First_Strong_Isolate} (Short: \p{Bc=FSI}) (1: U+2068)\p{Bidi_Class: FSI} → \p{Bidi_Class=First_Strong_Isolate} (1)\p{Bidi_Class: L} → \p{Bidi_Class=Left_To_Right} (1_096_473 plus all above-Unicode code points)\p{Bidi_Class: Left_To_Right} (Short: \p{Bc=L}) (1_096_473 plus all above-Unicode code points: [A-Za-z\xaa\xb5\xba\xc0-\xd6\xd8-\xf6\xf8-\xff], U+0100..02B8, U+02BB..02C1, U+02D0..02D1, U+02E0..02E4, U+02EE ...)\p{Bidi_Class: Left_To_Right_Embedding} (Short: \p{Bc=LRE}) (1: U+202A)\p{Bidi_Class: Left_To_Right_Isolate} (Short: \p{Bc=LRI}) (1: U+2066)\p{Bidi_Class: Left_To_Right_Override} (Short: \p{Bc=LRO}) (1: U+202D)\p{Bidi_Class: LRE} → \p{Bidi_Class=Left_To_Right_Embedding} (1)\p{Bidi_Class: LRI} → \p{Bidi_Class=Left_To_Right_Isolate} (1)\p{Bidi_Class: LRO} → \p{Bidi_Class=Left_To_Right_Override} (1)\p{Bidi_Class: Nonspacing_Mark} (Short: \p{Bc=NSM}) (1847: U+0300..036F, U+0483..0489, U+0591..05BD, U+05BF, U+05C1..05C2, U+05C4..05C5 ...)\p{Bidi_Class: NSM} → \p{Bidi_Class=Nonspacing_Mark} (1847)\p{Bidi_Class: ON} → \p{Bidi_Class=Other_Neutral} (5931)\p{Bidi_Class: Other_Neutral} (Short: \p{Bc=ON}) (5931: [!"&\'\(\)*;<=>?\@\[\\\]\^_`\{\|\}~\xa1\xa6-\xa9\xab-\xac\xae-\xaf\xb4\xb6-\xb8\xbb-\xbf\xd7\xf7], U+02B9..02BA, U+02C2..02CF, U+02D2..02DF, U+02E5..02ED, U+02EF..02FF ...)\p{Bidi_Class: Paragraph_Separator} (Short: \p{Bc=B}) (7: [\n\r\x1c-\x1e\x85], U+2029)\p{Bidi_Class: PDF} → \p{Bidi_Class=Pop_Directional_Format} (1)\p{Bidi_Class: PDI} → \p{Bidi_Class=Pop_Directional_Isolate} (1)\p{Bidi_Class: Pop_Directional_Format} (Short: \p{Bc=PDF}) (1: U+202C)\p{Bidi_Class: Pop_Directional_Isolate} (Short: \p{Bc=PDI}) (1: U+2069)\p{Bidi_Class: R} → \p{Bidi_Class=Right_To_Left} (3763)\p{Bidi_Class: Right_To_Left} (Short: \p{Bc=R}) (3763: U+0590, U+05BE, U+05C0, U+05C3, U+05C6, U+05C8..05FF ...)\p{Bidi_Class: Right_To_Left_Embedding} (Short: \p{Bc=RLE}) (1: U+202B)\p{Bidi_Class: Right_To_Left_Isolate} (Short: \p{Bc=RLI}) (1: U+2067)\p{Bidi_Class: Right_To_Left_Override} (Short: \p{Bc=RLO}) (1: U+202E)\p{Bidi_Class: S} → \p{Bidi_Class=Segment_Separator} (3)\p{Bidi_Class: Segment_Separator} (Short: \p{Bc=S}) (3: [\t\cK\x1f])\p{Bidi_Class: White_Space} (Short: \p{Bc=WS}) (17: [\f\x20], U+1680, U+2000..200A, U+2028, U+205F, U+3000)\p{Bidi_Class: WS} → \p{Bidi_Class=White_Space} (17)\p{Bidi_Control} → \p{Bidi_Control=Y} (Short: \p{BidiC}) (12)\p{Bidi_Control: N*} (Short: \p{BidiC=N}, \P{BidiC}) (1_114_100 plus all above-Unicode code points: U+0000..061B, U+061D..200D, U+2010..2029, U+202F..2065, U+206A..infinity)\p{Bidi_Control: Y*} (Short: \p{BidiC=Y}, \p{BidiC}) (12: U+061C, U+200E..200F, U+202A..202E, U+2066..2069)\p{Bidi_M} → \p{Bidi_Mirrored} (= \p{Bidi_Mirrored=Y}) (545)\p{Bidi_M: *} → \p{Bidi_Mirrored: *}\p{Bidi_Mirrored} → \p{Bidi_Mirrored=Y} (Short: \p{BidiM}) (545)\p{Bidi_Mirrored: N*} (Short: \p{BidiM=N}, \P{BidiM}) (1_113_567 plus all above-Unicode code points: [\x00-\x20!"#\$\%&\'*+,\-.\/0-9:;=?\@A-Z\\\^_`a-z\|~\x7f-\xaa\xac-\xba\xbc-\xff], U+0100..0F39, U+0F3E..169A, U+169D..2038, U+203B..2044, U+2047..207C ...)\p{Bidi_Mirrored: Y*} (Short: \p{BidiM=Y}, \p{BidiM}) (545: [\(\)<>\[\]\{\}\xab\xbb], U+0F3A..0F3D, U+169B..169C, U+2039..203A, U+2045..2046, U+207D..207E ...)\p{Bidi_Paired_Bracket_Type: C} → \p{Bidi_Paired_Bracket_Type=Close} (60)\p{Bidi_Paired_Bracket_Type: Close} (Short: \p{Bpt=C}) (60: [\)\]\}], U+0F3B, U+0F3D, U+169C, U+2046, U+207E ...)\p{Bidi_Paired_Bracket_Type: N} → \p{Bidi_Paired_Bracket_Type=None} (1_113_992 plus all above-Unicode code points)\p{Bidi_Paired_Bracket_Type: None} (Short: \p{Bpt=N}) (1_113_992 plus all above-Unicode code points: [\x00-\x20!"#\$\%&\'*+,\-.\/0-9:;<=>?\@A-Z\\\^_`a-z\|~\x7f-\xff], U+0100..0F39, U+0F3E..169A, U+169D..2044, U+2047..207C, U+207F..208C ...)\p{Bidi_Paired_Bracket_Type: O} → \p{Bidi_Paired_Bracket_Type=Open} (60)\p{Bidi_Paired_Bracket_Type: Open} (Short: \p{Bpt=O}) (60: [\(\[\{], U+0F3A, U+0F3C, U+169B, U+2045, U+207D ...)\p{Blank} → \p{XPosixBlank} (18)\p{Blk: *} → \p{Block: *}\p{Block: Adlam} (NOT \p{Adlam} NOR \p{Is_Adlam}) (96: U+1E900..1E95F)\p{Block: Aegean_Numbers} (64: U+10100..1013F)\p{Block: Ahom} (NOT \p{Ahom} NOR \p{Is_Ahom}) (64: U+11700..1173F)\p{Block: Alchemical} → \p{Block=Alchemical_Symbols} (128)\p{Block: Alchemical_Symbols} (Short: \p{Blk=Alchemical}) (128: U+1F700..1F77F)\p{Block: Alphabetic_PF} → \p{Block=Alphabetic_Presentation_Forms} (80)\p{Block: Alphabetic_Presentation_Forms} (Short: \p{Blk=AlphabeticPF}) (80: U+FB00..FB4F)\p{Block: Anatolian_Hieroglyphs} (NOT \p{Anatolian_Hieroglyphs} NOR \p{Is_Anatolian_Hieroglyphs}) (640: U+14400..1467F)\p{Block: Arabic} (NOT \p{Arabic} NOR \p{Is_Arabic}) (256: U+0600..06FF)\p{Block: Arabic_Ext_A} → \p{Block=Arabic_Extended_A} (96)\p{Block: Arabic_Extended_A} (Short: \p{Blk=ArabicExtA}) (96: U+08A0..08FF)\p{Block: Armenian} (NOT \p{Armenian} NOR \p{Is_Armenian}) (96: U+0530..058F)\p{Block: Arrows} (112: U+2190..21FF)\p{Block: ASCII} → \p{Block=Basic_Latin} (128)\p{Block: Basic_Latin} (Short: \p{Blk=ASCII}) (128: [\x00-\x7f])\p{Block: CJK} → \p{Block=CJK_Unified_Ideographs} (20_992)\p{Block: CJK_Unified_Ideographs} (Short: \p{Blk=CJK}) (20_992: U+4E00..9FFF)\p{Block: Combining_Diacritical_Marks} (Short: \p{Blk=Diacriticals}) (112: U+0300..036F)\p{Block: Currency_Symbols} (48: U+20A0..20CF)\p{Block: Cyrillic} (NOT \p{Cyrillic} NOR \p{Is_Cyrillic}) (256: U+0400..04FF)\p{Block: Devanagari} (NOT \p{Devanagari} NOR \p{Is_Devanagari}) (128: U+0900..097F)\p{Block: Dingbats} (192: U+2700..27BF)\p{Block: Emoticons} (80: U+1F600..1F64F)\p{Block: General_Punctuation} (Short: \p{Blk=Punctuation}; NOT \p{Punct} NOR \p{Is_Punctuation}) (112: U+2000..206F)\p{Block: Geometric_Shapes} (96: U+25A0..25FF)\p{Block: Greek} → \p{Block=Greek_And_Coptic} (NOT \p{Greek} NOR \p{Is_Greek}) (144)\p{Block: Greek_And_Coptic} (Short: \p{Blk=Greek}; NOT \p{Greek} NOR \p{Is_Greek}) (144: U+0370..03FF)\p{Block: Hangul_Syllables} (Short: \p{Blk=Hangul}; NOT \p{Hangul} NOR \p{Is_Hangul}) (11_184: U+AC00..D7AF)\p{Block: Hebrew} (NOT \p{Hebrew} NOR \p{Is_Hebrew}) (112: U+0590..05FF)\p{Block: Hiragana} (NOT \p{Hiragana} NOR \p{Is_Hiragana}) (96: U+3040..309F)\p{Block: Katakana} (NOT \p{Katakana} NOR \p{Is_Katakana}) (96: U+30A0..30FF)\p{Block: Latin_1_Supplement} (Short: \p{Blk=Latin1}) (128: [\x80-\xff])\p{Block: Latin_Extended_A} (Short: \p{Blk=LatinExtA}) (128: U+0100..017F)\p{Block: Letterlike_Symbols} (80: U+2100..214F)\p{Block: Miscellaneous_Symbols} (Short: \p{Blk=MiscSymbols}) (256: U+2600..26FF)\p{Block: Miscellaneous_Technical} (Short: \p{Blk=MiscTechnical}) (256: U+2300..23FF)\p{Block: Musical_Symbols} (Short: \p{Blk=Music}) (256: U+1D100..1D1FF)\p{Block: No_Block} (Short: \p{Blk=NB}) (826_640 plus all above-Unicode code points: U+0870..089F, U+2FE0..2FEF, U+10200..1027F, U+103E0..103FF, U+10570..105FF, U+10780..107FF ...)\p{Block: Number_Forms} (64: U+2150..218F)\p{Block: Private_Use_Area} (Short: \p{Blk=PUA}; NOT \p{Private_Use} NOR \p{Is_Private_Use}) (6400: U+E000..F8FF)\p{Block: Spacing_Modifier_Letters} (Short: \p{Blk=ModifierLetters}) (80: U+02B0..02FF)\p{Block: Superscripts_And_Subscripts} (Short: \p{Blk=SuperAndSub}) (48: U+2070..209F)\p{Block: Thai} (NOT \p{Thai} NOR \p{Is_Thai}) (128: U+0E00..0E7F)\p{Block: Variation_Selectors} (Short: \p{Blk=VS}; NOT \p{Variation_Selector} NOR \p{Is_VS}) (16: U+FE00..FE0F)\p{C} / \pC → \p{Other} (= \p{General_Category=Other}) (970_414 plus all above-Unicode code points)\p{Cased_Letter} → \p{General_Category=Cased_Letter} (Short: \p{LC}) (3977)\p{Cc} → \p{XPosixCntrl} (= \p{General_Category=Control}) (65)\p{Cf} → \p{Format} (= \p{General_Category=Format}) (161)\p{Close_Punctuation} → \p{General_Category=Close_Punctuation} (Short: \p{Pe}) (73)\p{Cn} → \p{Unassigned} (= \p{General_Category=Unassigned}) (830_672 plus all above-Unicode code points)\p{Cntrl} → \p{XPosixCntrl} (= \p{General_Category=Control}) (65)\p{Co} → \p{Private_Use} (= \p{General_Category=Private_Use}) (NOT \p{Private_Use_Area}) (137_468)\p{Combining_Mark} → \p{Mark} (= \p{General_Category=Mark}) (2295)\p{Connector_Punctuation} → \p{General_Category=Connector_Punctuation} (Short: \p{Pc}) (10)\p{Control} → \p{XPosixCntrl} (= \p{General_Category=Control}) (65)\p{Cs} → \p{Surrogate} (= \p{General_Category=Surrogate}) (2048)\p{Currency_Symbol} → \p{General_Category=Currency_Symbol} (Short: \p{Sc}) (62)\p{Dash_Punctuation} → \p{General_Category=Dash_Punctuation} (Short: \p{Pd}) (25)\p{Decimal_Number} → \p{XPosixDigit} (= \p{General_Category=Decimal_Number}) (650)\p{Enclosing_Mark} → \p{General_Category=Enclosing_Mark} (Short: \p{Me}) (13)\p{Final_Punctuation} → \p{General_Category=Final_Punctuation} (Short: \p{Pf}) (10)\p{Format} → \p{General_Category=Format} (Short: \p{Cf}) (161)\p{Initial_Punctuation} → \p{General_Category=Initial_Punctuation} (Short: \p{Pi}) (12)\p{L} / \pL → \p{Letter} (= \p{General_Category=Letter}) (131_241)\p{LC} → \p{Cased_Letter} (= \p{General_Category=Cased_Letter}) (3977)\p{Letter} → \p{General_Category=Letter} (Short: \p{L}) (131_241)\p{Letter_Number} → \p{General_Category=Letter_Number} (Short: \p{Nl}) (236)\p{Line_Separator} → \p{General_Category=Line_Separator} (Short: \p{Zl}) (1)\p{Ll} → \p{Lowercase_Letter} (= \p{General_Category=Lowercase_Letter}) (/i= General_Category=Cased_Letter) (2155)\p{Lm} → \p{Modifier_Letter} (= \p{General_Category=Modifier_Letter}) (260)\p{Lo} → \p{Other_Letter} (= \p{General_Category=Other_Letter}) (127_004)\p{Lt} → \p{Titlecase_Letter} (= \p{General_Category=Titlecase_Letter}) (/i= General_Category=Cased_Letter) (31)\p{Lu} → \p{Uppercase_Letter} (= \p{General_Category=Uppercase_Letter}) (/i= General_Category=Cased_Letter) (1791)\p{M} / \pM → \p{Mark} (= \p{General_Category=Mark}) (2295)\p{Mark} → \p{General_Category=Mark} (Short: \p{M}) (2295: U+0300..036F, U+0483..0489, U+0591..05BD, U+05BF, U+05C1..05C2, U+05C4..05C5 ...)\p{Math_Symbol} → \p{General_Category=Math_Symbol} (Short: \p{Sm}) (948)\p{Mc} → \p{Spacing_Mark} (= \p{General_Category=Spacing_Mark}) (443)\p{Me} → \p{Enclosing_Mark} (= \p{General_Category=Enclosing_Mark}) (13)\p{Mn} → \p{Nonspacing_Mark} (= \p{General_Category=Nonspacing_Mark}) (1839)\p{Modifier_Letter} → \p{General_Category=Modifier_Letter} (Short: \p{Lm}) (260)\p{Modifier_Symbol} → \p{General_Category=Modifier_Symbol} (Short: \p{Sk}) (123)\p{N} / \pN → \p{Number} (= \p{General_Category=Number}) (1781)\p{Nd} → \p{XPosixDigit} (= \p{General_Category=Decimal_Number}) (650)\p{Nl} → \p{Letter_Number} (= \p{General_Category=Letter_Number}) (236)\p{No} → \p{Other_Number} (= \p{General_Category=Other_Number}) (895)\p{Nonspacing_Mark} → \p{General_Category=Nonspacing_Mark} (Short: \p{Mn}) (1839)\p{Number} → \p{General_Category=Number} (Short: \p{N}) (1781)\p{Other} → \p{General_Category=Other} (Short: \p{C}) (970_414 plus all above-Unicode code points)\p{Other_Letter} → \p{General_Category=Other_Letter} (Short: \p{Lo}) (127_004)\p{Other_Number} → \p{General_Category=Other_Number} (Short: \p{No}) (895)\p{Other_Punctuation} → \p{General_Category=Other_Punctuation} (Short: \p{Po}) (593)\p{Other_Symbol} → \p{General_Category=Other_Symbol} (Short: \p{So}) (6431)\p{P} / \pP → \p{Punct} (= \p{General_Category=Punctuation}) (NOT \p{General_Punctuation}) (798)\p{Paragraph_Separator} → \p{General_Category=Paragraph_Separator} (Short: \p{Zp}) (1)\p{Pc} → \p{Connector_Punctuation} (= \p{General_Category=Connector_Punctuation}) (10)\p{Pd} → \p{Dash_Punctuation} (= \p{General_Category=Dash_Punctuation}) (25)\p{Pe} → \p{Close_Punctuation} (= \p{General_Category=Close_Punctuation}) (73)\p{Pf} → \p{Final_Punctuation} (= \p{General_Category=Final_Punctuation}) (10)\p{Pi} → \p{Initial_Punctuation} (= \p{General_Category=Initial_Punctuation}) (12)\p{Po} → \p{Other_Punctuation} (= \p{General_Category=Other_Punctuation}) (593)\p{Private_Use} → \p{General_Category=Private_Use} (Short: \p{Co}; NOT \p{Private_Use_Area}) (137_468)\p{Ps} → \p{Open_Punctuation} (= \p{General_Category=Open_Punctuation}) (75)\p{Punct} → \p{General_Category=Punctuation} (Short: \p{P}; NOT \p{General_Punctuation}) (798)\p{S} / \pS → \p{Symbol} (= \p{General_Category=Symbol}) (7564)\p{Sc} → \p{Currency_Symbol} (= \p{General_Category=Currency_Symbol}) (62)\p{Separator} → \p{General_Category=Separator} (Short: \p{Z}) (19)\p{Sk} → \p{Modifier_Symbol} (= \p{General_Category=Modifier_Symbol}) (123)\p{Sm} → \p{Math_Symbol} (= \p{General_Category=Math_Symbol}) (948)\p{So} → \p{Other_Symbol} (= \p{General_Category=Other_Symbol}) (6431)\p{Space_Separator} → \p{General_Category=Space_Separator} (Short: \p{Zs}) (17)\p{Spacing_Mark} → \p{General_Category=Spacing_Mark} (Short: \p{Mc}) (443)\p{Surrogate} → \p{General_Category=Surrogate} (Short: \p{Cs}) (2048)\p{Symbol} → \p{General_Category=Symbol} (Short: \p{S}) (7564)\p{Z} / \pZ → \p{Separator} (= \p{General_Category=Separator}) (19)\p{Zl} → \p{Line_Separator} (= \p{General_Category=Line_Separator}) (1)\p{Zp} → \p{Paragraph_Separator} (= \p{General_Category=Paragraph_Separator}) (1)\p{Zs} → \p{Space_Separator} (= \p{General_Category=Space_Separator}) (17)\p{Case_Ignorable} → \p{Case_Ignorable=Y} (Short: \p{CI}) (2413)\p{Case_Ignorable: N*} (Short: \p{CI=N}, \P{CI}) (1_111_699 plus all above-Unicode code points)\p{Case_Ignorable: Y*} (Short: \p{CI=Y}, \p{CI}) (2413: [\'.:\^`\xa8\xad\xaf\xb4\xb7-\xb8], U+02B0..036F, U+0374..0375, U+037A, U+0384..0385, U+0387 ...)\p{Cased} → \p{Cased=Y} (4286)\p{Cased: N*} (Single: \P{Cased}) (1_109_826 plus all above-Unicode code points)\p{Cased: Y*} (Single: \p{Cased}) (4286: [A-Za-z\xaa\xb5\xba\xc0-\xd6\xd8-\xf6\xf8-\xff], U+0100..01BA, U+01BC..01BF, U+01C4..0293, U+0295..02B8, U+02C0..02C1 ...)\p{Changes_When_Casefolded} → \p{Changes_When_Casefolded=Y} (Short: \p{CWCF}) (1466)\p{Changes_When_Casemapped} → \p{Changes_When_Casemapped=Y} (Short: \p{CWCM}) (2847)\p{Changes_When_Lowercased} → \p{Changes_When_Lowercased=Y} (Short: \p{CWL}) (1393)\p{Changes_When_NFKC_Casefolded} → \p{Changes_When_NFKC_Casefolded=Y} (Short: \p{CWKCF}) (10_329)\p{Changes_When_Titlecased} → \p{Changes_When_Titlecased=Y} (Short: \p{CWT}) (1412)\p{Changes_When_Uppercased} → \p{Changes_When_Uppercased=Y} (Short: \p{CWU}) (1485)\p{Lower} → \p{XPosixLower} (= \p{Lowercase=Y}) (/i= Cased=Yes) (2344)\p{Lowercase} → \p{XPosixLower} (= \p{Lowercase=Y}) (/i= Cased=Yes) (2344)\p{Title} → \p{Titlecase} (/i= Cased=Yes) (31)\p{Titlecase} (= \p{Gc=Lt}) (Short: \p{Title}; /i= Cased=Yes) (31: U+01C5, U+01C8, U+01CB, U+01F2, U+1F88..1F8F, U+1F98..1F9F ...)\p{Upper} → \p{XPosixUpper} (= \p{Uppercase=Y}) (/i= Cased=Yes) (1911)\p{Uppercase} → \p{XPosixUpper} (= \p{Uppercase=Y}) (/i= Cased=Yes) (1911)\p{Composition_Exclusion} → \p{Composition_Exclusion=Y} (Short: \p{CE}) (81)\p{Decomposition_Type: Can} → \p{Decomposition_Type=Canonical} (13_233)\p{Decomposition_Type: Canonical} (Short: \p{Dt=Can}) (13_233)\p{Decomposition_Type: Compat} (Short: \p{Dt=Com}) (720)\p{Decomposition_Type: Font} (Short: \p{Dt=Font}) (1194)\p{Decomposition_Type: None} (Short: \p{Dt=None}) (1_097_204 plus all above-Unicode code points)\p{Decomposition_Type: Non_Canonical} Union of all non-canonical decompositions (Short: \p{Dt=NonCanon}) (Perl extension) (3675)\p{Decomposition_Type: Super} (Short: \p{Dt=Sup}) (154)\p{Numeric_Type: Decimal} (Short: \p{Nt=De}) (650: [0-9], U+0660..0669, U+06F0..06F9, U+07C0..07C9, U+0966..096F ...)\p{Numeric_Type: Digit} (Short: \p{Nt=Di}) (128)\p{Numeric_Type: None} (Short: \p{Nt=None}) (1_112_250 plus all above-Unicode code points)\p{Numeric_Type: Numeric} (Short: \p{Nt=Nu}) (1084)\p{Numeric_Value: NaN} (Short: \p{Nv=NaN}) (1_112_250 plus all above-Unicode code points)(Numeric_Value entries from -1/2 through 1e+12 are available — see full man page for complete listing)
\p{Dash} → \p{Dash=Y} (29)\p{Default_Ignorable_Code_Point} → \p{Default_Ignorable_Code_Point=Y} (Short: \p{DI}) (4173)\p{Deprecated} → \p{Deprecated=Y} (Short: \p{Dep}) (15)\p{Diacritic} → \p{Diacritic=Y} (Short: \p{Dia}) (882)\p{Emoji} → \p{Emoji=Y} (1367)\p{Emoji_Component} → \p{Emoji_Component=Y} (Short: \p{EComp}) (146)\p{Emoji_Modifier} → \p{Emoji_Modifier=Y} (Short: \p{EMod}) (5)\p{Emoji_Modifier_Base} → \p{Emoji_Modifier_Base=Y} (Short: \p{EBase}) (122)\p{Emoji_Presentation} → \p{Emoji_Presentation=Y} (Short: \p{EPres}) (1148)\p{Extended_Pictographic} → \p{Extended_Pictographic=Y} (Short: \p{ExtPict}) (3537)\p{Extender} → \p{Extender=Y} (Short: \p{Ext}) (48)\p{Full_Composition_Exclusion} → \p{Full_Composition_Exclusion=Y} (Short: \p{CompEx}) (1120)\p{Grapheme_Base} → \p{Grapheme_Base=Y} (Short: \p{GrBase}) (141_814)\p{Grapheme_Extend} → \p{Grapheme_Extend=Y} (Short: \p{GrExt}) (1979)\p{Hex_Digit} → \p{XPosixXDigit} (= \p{Hex_Digit=Y}) (44)\p{ID_Continue} → \p{ID_Continue=Y} (Short: \p{IDC}) (134_434)\p{ID_Start} → \p{ID_Start=Y} (Short: \p{IDS}) (131_482)\p{Ideographic} → \p{Ideographic=Y} (Short: \p{Ideo}) (101_652)\p{Join_Control} → \p{Join_Control=Y} (Short: \p{JoinC}) (2)\p{Logical_Order_Exception} → \p{Logical_Order_Exception=Y} (Short: \p{LOE}) (19)\p{Math} → \p{Math=Y} (2310)\p{Noncharacter_Code_Point} → \p{Noncharacter_Code_Point=Y} (Short: \p{NChar}) (66)\p{Pattern_Syntax} → \p{Pattern_Syntax=Y} (Short: \p{PatSyn}) (2760)\p{Pattern_White_Space} → \p{Pattern_White_Space=Y} (Short: \p{PatWS}) (11)\p{Prepended_Concatenation_Mark} → \p{Prepended_Concatenation_Mark=Y} (Short: \p{PCM}) (11)\p{Quotation_Mark} → \p{Quotation_Mark=Y} (Short: \p{QMark}) (30)\p{Radical} → \p{Radical=Y} (329)\p{Regional_Indicator} → \p{Regional_Indicator=Y} (Short: \p{RI}) (26)\p{Sentence_Terminal} → \p{Sentence_Terminal=Y} (Short: \p{STerm}) (143)\p{Soft_Dotted} → \p{Soft_Dotted=Y} (Short: \p{SD}) (46)\p{Terminal_Punctuation} → \p{Terminal_Punctuation=Y} (Short: \p{Term}) (267)\p{Unified_Ideograph} → \p{Unified_Ideograph=Y} (Short: \p{UIdeo}) (92_856)\p{Variation_Selector} → \p{Variation_Selector=Y} (Short: \p{VS}; NOT \p{Variation_Selectors}) (259)\p{White_Space} → \p{White_Space=Y} (Short: \p{Space}) (25)\p{XID_Continue} → \p{XID_Continue=Y} (Short: \p{XIDC}) (134_415)\p{XID_Start} → \p{XID_Start=Y} (Short: \p{XIDS}) (131_459)\p{Common} → \p{Script_Extensions=Common} (Short: \p{Zyyy}) (7661)\p{Inherited} → \p{Script_Extensions=Inherited} (Short: \p{Zinh}) (503)\p{Latin} → \p{Script_Extensions=Latin} (Short: \p{Latn}) (1403)\p{Greek} → \p{Script_Extensions=Greek} (Short: \p{Grek}; NOT \p{Greek_And_Coptic}) (522)\p{Cyrillic} → \p{Script_Extensions=Cyrillic} (Short: \p{Cyrl}; NOT \p{Block=Cyrillic}) (447)\p{Arabic} → \p{Script_Extensions=Arabic} (Short: \p{Arab}; NOT \p{Block=Arabic}) (1335)\p{Hebrew} → \p{Script_Extensions=Hebrew} (Short: \p{Hebr}; NOT \p{Block=Hebrew}) (134)\p{Han} → \p{Script_Extensions=Han} (94_492)\p{Hangul} → \p{Script_Extensions=Hangul} (Short: \p{Hang}; NOT \p{Hangul_Syllables}) (11_775)\p{Hiragana} → \p{Script_Extensions=Hiragana} (Short: \p{Hira}; NOT \p{Block=Hiragana}) (431)\p{Katakana} → \p{Script_Extensions=Katakana} (Short: \p{Kana}; NOT \p{Block=Katakana}) (356)\p{Devanagari} → \p{Script_Extensions=Devanagari} (Short: \p{Deva}; NOT \p{Block=Devanagari}) (210)\p{Thai} → \p{Script_Extensions=Thai} (NOT \p{Block=Thai}) (86)\p{Unknown} → \p{Script_Extensions=Unknown} (Short: \p{Zzzz}) (970_188 plus all above-Unicode code points)(Many more script entries: Adlam through Zanabazar_Square — see full man page for complete listing)
\p{Hangul_Syllable_Type: L} → \p{Hangul_Syllable_Type=Leading_Jamo} (125)\p{Hangul_Syllable_Type: LV} → \p{Hangul_Syllable_Type=LV_Syllable} (399)\p{Hangul_Syllable_Type: LVT} → \p{Hangul_Syllable_Type=LVT_Syllable} (10_773)\p{Hangul_Syllable_Type: T} → \p{Hangul_Syllable_Type=Trailing_Jamo} (137)\p{Hangul_Syllable_Type: V} → \p{Hangul_Syllable_Type=Vowel_Jamo} (95)\p{Hangul_Syllable_Type: NA} → \p{Hangul_Syllable_Type=Not_Applicable} (1_102_583 plus all above-Unicode code points)\p{Joining_Type: C} → \p{Joining_Type=Join_Causing} (4)\p{Joining_Type: D} → \p{Joining_Type=Dual_Joining} (586)\p{Joining_Type: L} → \p{Joining_Type=Left_Joining} (5)\p{Joining_Type: Non_Joining} (Short: \p{Jt=U}) (1_111_390 plus all above-Unicode code points)\p{Joining_Type: R} → \p{Joining_Type=Right_Joining} (130)\p{Joining_Type: T} → \p{Joining_Type=Transparent} (1997)\p{Joining_Group: No_Joining_Group} (Short: \p{Jg=NoJoiningGroup}) (1_113_790 plus all above-Unicode code points)(Additional Joining_Group entries: Alef, Beh, Dal, Feh, Hah, Kaf, Lam, Meem, Noon, Qaf, Reh, Sad, Seen, Tah, Waw, Yeh, and many more — see full man page)
\p{Line_Break: AI} → \p{Line_Break=Ambiguous} (707)\p{Line_Break: AL} → \p{Line_Break=Alphabetic} (21_400)\p{Line_Break: BK} → \p{Line_Break=Mandatory_Break} (4)\p{Line_Break: CM} → \p{Line_Break=Combining_Mark} (2286)\p{Line_Break: CR} → \p{Line_Break=Carriage_Return} (1)\p{Line_Break: ID} → \p{Line_Break=Ideographic} (172_462)\p{Line_Break: LF} → \p{Line_Break=Line_Feed} (1)\p{Line_Break: NL} → \p{Line_Break=Next_Line} (1)\p{Line_Break: NU} → \p{Line_Break=Numeric} (642)\p{Line_Break: Unknown} (Short: \p{Lb=XX}) (901_256 plus all above-Unicode code points)\p{Line_Break: ZWJ} (Short: \p{Lb=ZWJ}) (1: U+200D)\p{Sentence_Break: ATerm} (Short: \p{SB=AT}) (4: [.], U+2024, U+FE52, U+FF0E)\p{Sentence_Break: Close} (Short: \p{SB=CL}) (187)\p{Sentence_Break: Extend} (Short: \p{SB=EX}) (2395)\p{Sentence_Break: Lower} (Short: \p{SB=LO}) (2297)\p{Sentence_Break: Numeric} (Short: \p{SB=NU}) (652)\p{Sentence_Break: OLetter} (Short: \p{SB=LE}) (127_413)\p{Sentence_Break: Other} (Short: \p{SB=XX}) (979_014 plus all above-Unicode code points)\p{Sentence_Break: Sep} (Short: \p{SB=SE}) (3: [\x85], U+2028..2029)\p{Sentence_Break: STerm} (Short: \p{SB=ST}) (140: [!?], U+0589, U+061E..061F, U+06D4, U+0700..0702 ...)\p{Sentence_Break: Upper} (Short: \p{SB=UP}) (1896)\p{Word_Break: ALetter} (Short: \p{WB=LE}) (28_854)\p{Word_Break: Extend} (Short: \p{WB=Extend}) (2399)\p{Word_Break: Format} (Short: \p{WB=FO}) (62)\p{Word_Break: Katakana} (Short: \p{WB=KA}) (314)\p{Word_Break: Numeric} (Short: \p{WB=NU}) (651)\p{Word_Break: Other} (Short: \p{WB=XX}) (1_081_665 plus all above-Unicode code points)\p{Word_Break: Regional_Indicator} (Short: \p{WB=RI}) (26)\p{Word_Break: ZWJ} (Short: \p{WB=ZWJ}) (1: U+200D)\p{PosixAlnum} (62: [0-9A-Za-z])\p{PosixAlpha} (52: [A-Za-z])\p{PosixBlank} (2: [\t\x20])\p{PosixCntrl} ASCII control characters (33)\p{PosixDigit} (10: [0-9])\p{PosixGraph} (94: [!"#\$\%&\'\(\)*+,\-.\/0-9:;<=>?\@A-Z\[\\\]\^_`a-z\{\|\}~])\p{PosixLower} (/i= PosixAlpha) (26: [a-z])\p{PosixPrint} (95: [\x20-\x7e])\p{PosixPunct} (32: [!"#\$\%&\'\(\)*+,\-.\/:;<=>?\@\[\\\]\^_`\{\|\}~])\p{PosixSpace} (Short: \p{PerlSpace}) (6: [\t\n\cK\f\r\x20])\p{PosixUpper} (/i= PosixAlpha) (26: [A-Z])\p{PosixWord} → \w, restricted to ASCII (Short: \p{PerlWord}) (63: [0-9A-Z_a-z])\p{PosixXDigit} → \p{ASCII_Hex_Digit=Y} (Short: \p{AHex}) (22)\p{XPosixAlnum} Alphabetic and (decimal) Numeric (Short: \p{Alnum}) (133_525)\p{XPosixAlpha} → \p{Alphabetic=Y} (Short: \p{Alpha}) (132_875)\p{XPosixBlank} → \h, Horizontal white space (Short: \p{Blank}) (18: [\t\x20\xa0], U+1680, U+2000..200A, U+202F, U+205F, U+3000)\p{XPosixCntrl} → \p{General_Category=Control} (Short: \p{Cc}) (65)\p{XPosixDigit} → \p{General_Category=Decimal_Number} (Short: \p{Nd}) (650)\p{XPosixGraph} Characters that are graphical (Short: \p{Graph}) (281_308)\p{XPosixLower} → \p{Lowercase=Y} (Short: \p{Lower}; /i= Cased=Yes) (2344)\p{XPosixPrint} Characters that are graphical plus space (Short: \p{Print}) (281_325)\p{XPosixPunct} → \p{Punct} + ASCII-range \p{Symbol} (807)\p{XPosixSpace} → \s including beyond ASCII and vertical tab (Short: \p{SpacePerl}) (25)\p{XPosixUpper} → \p{Uppercase=Y} (Short: \p{Upper}; /i= Cased=Yes) (1911)\p{XPosixWord} → \w, including beyond ASCII (Short: \p{Word}) (134_564)\p{XPosixXDigit} → \p{Hex_Digit=Y} (Short: \p{Hex}) (44)\p{PerlSpace} → \p{PosixSpace} (6)\p{PerlWord} → \p{PosixWord} (63)\p{VertSpace} → \v (7: [\n\cK\f\r\x85], U+2028..2029)\p{HorizSpace} → \p{XPosixBlank} (18)\p{SpacePerl} → \p{XPosixSpace} (25)\p{XPerlSpace} → \p{XPosixSpace} (25)\p{Vertical_Orientation: R} → \p{Vertical_Orientation=Rotated} (786_865 plus all above-Unicode code points)\p{Vertical_Orientation: Tr} → \p{Vertical_Orientation=Transformed_Rotated} (47)\p{Vertical_Orientation: Tu} → \p{Vertical_Orientation=Transformed_Upright} (148)\p{Vertical_Orientation: U} → \p{Vertical_Orientation=Upright} (327_052)\p{Identifier_Status: Allowed} (107_835)\p{Identifier_Status: Restricted} (1_006_277 plus all above-Unicode code points)\p{Identifier_Type: Default_Ignorable} (395)\p{Identifier_Type: Deprecated} (15)\p{Identifier_Type: Exclusion} (16_745)\p{Identifier_Type: Inclusion} (19)\p{Identifier_Type: Limited_Use} (5248)\p{Identifier_Type: Not_Character} (970_247 plus all above-Unicode code points)\p{Identifier_Type: Not_NFKC} (4800)\p{Identifier_Type: Not_XID} (7998)\p{Identifier_Type: Obsolete} (1611)\p{Identifier_Type: Recommended} (107_816)\p{Identifier_Type: Technical} (1463)\p{Identifier_Type: Uncommon_Use} (348)\p{Present_In: 1.1} → \p{Age=V1_1} (Perl extension) (33_979)\p{Present_In: 2.0} → Code point's usage introduced in version 2.0 or earlier (Perl extension) (178_500)\p{Present_In: 3.0} → Version 3.0 or earlier (Perl extension) (188_809)\p{Present_In: 3.1} → Version 3.1 or earlier (Perl extension) (233_787)\p{Present_In: 3.2} → Version 3.2 or earlier (Perl extension) (234_803)\p{Present_In: 4.0} → Version 4.0 or earlier (Perl extension) (236_029)\p{Present_In: 4.1} → Version 4.1 or earlier (Perl extension) (237_302)\p{Present_In: 5.0} → Version 5.0 or earlier (Perl extension) (238_671)\p{Present_In: 5.1} → Version 5.1 or earlier (Perl extension) (240_295)\p{Present_In: 5.2} → Version 5.2 or earlier (Perl extension) (246_943)\p{Present_In: 6.0} → Version 6.0 or earlier (Perl extension) (249_031)\p{Present_In: 6.1} → Version 6.1 or earlier (Perl extension) (249_763)\p{Present_In: 6.2} → Version 6.2 or earlier (Perl extension) (249_764)\p{Present_In: 6.3} → Version 6.3 or earlier (Perl extension) (249_769)\p{Present_In: 7.0} → Version 7.0 or earlier (Perl extension) (252_603)\p{Present_In: 8.0} → Version 8.0 or earlier (Perl extension) (260_319)\p{Present_In: 9.0} → Version 9.0 or earlier (Perl extension) (267_819)\p{Present_In: 10.0} → Version 10.0 or earlier (Perl extension) (276_337)\p{Present_In: 11.0} → Version 11.0 or earlier (Perl extension) (277_021)\p{Present_In: 12.0} → Version 12.0 or earlier (Perl extension) (277_575)\p{Present_In: 12.1} → Version 12.1 or earlier (Perl extension) (277_576)\p{Present_In: 13.0} → Version 13.0 or earlier (Perl extension) (283_506)\p{Present_In: Unassigned} → \p{Age=Unassigned} (Perl extension) (830_606 plus all above-Unicode code points)\p{NFC_Quick_Check: M} → \p{NFC_Quick_Check=Maybe} (111)\p{NFC_Quick_Check: N} → \p{NFC_Quick_Check=No} (1120)\p{NFC_Quick_Check: Y} → \p{NFC_Quick_Check=Yes} (1_112_881 plus all above-Unicode code points)\p{NFD_Quick_Check: N} → \p{NFD_Quick_Check=No} (13_233)\p{NFD_Quick_Check: Y} → \p{NFD_Quick_Check=Yes} (1_100_879 plus all above-Unicode code points)\p{NFKC_Quick_Check: M} → \p{NFKC_Quick_Check=Maybe} (111)\p{NFKC_Quick_Check: N} → \p{NFKC_Quick_Check=No} (4807)\p{NFKC_Quick_Check: Y} → \p{NFKC_Quick_Check=Yes} (1_109_194 plus all above-Unicode code points)\p{NFKD_Quick_Check: N} → \p{NFKD_Quick_Check=No} (16_908)\p{NFKD_Quick_Check: Y} → \p{NFKD_Quick_Check=Yes} (1_097_204 plus all above-Unicode code points)\p{East_Asian_Width: A} → \p{East_Asian_Width=Ambiguous} (138_739)\p{East_Asian_Width: F} → \p{East_Asian_Width=Fullwidth} (104)\p{East_Asian_Width: H} → \p{East_Asian_Width=Halfwidth} (123)\p{East_Asian_Width: N} → \p{East_Asian_Width=Neutral} (792_699 plus all above-Unicode code points)\p{East_Asian_Width: Na} → \p{East_Asian_Width=Narrow} (111)\p{East_Asian_Width: W} → \p{East_Asian_Width=Wide} (182_336)\p{Indic_Positional_Category: Bottom} (Short: \p{InPC=Bottom}) (351)\p{Indic_Positional_Category: Left} (Short: \p{InPC=Left}) (64)\p{Indic_Positional_Category: Right} (Short: \p{InPC=Right}) (288)\p{Indic_Positional_Category: Top} (Short: \p{InPC=Top}) (415)\p{Indic_Positional_Category: NA} (Short: \p{InPC=NA}) (1_112_902 plus all above-Unicode code points)\p{Indic_Syllabic_Category: Bindu} (Short: \p{InSC=Bindu}) (91)\p{Indic_Syllabic_Category: Consonant} (Short: \p{InSC=Consonant}) (2195)\p{Indic_Syllabic_Category: Virama} (Short: \p{InSC=Virama}) (27)\p{Indic_Syllabic_Category: Vowel} (Short: \p{InSC=Vowel}) (30)\p{Indic_Syllabic_Category: Vowel_Dependent} (Short: \p{InSC=VowelDependent}) (683)\p{Indic_Syllabic_Category: Vowel_Independent} (Short: \p{InSC=VowelIndependent}) (484)\p{Indic_Syllabic_Category: Other} (Short: \p{InSC=Other}) (1_109_572 plus all above-Unicode code points)\p{Script_Extensions: Arabic} (Short: \p{Scx=Arab}, \p{Arab}) (1335)\p{Script_Extensions: Common} (Short: \p{Scx=Zyyy}, \p{Zyyy}) (7661)\p{Script_Extensions: Han} (Short: \p{Scx=Han}, \p{Han}) (94_492)\p{Script_Extensions: Hangul} (Short: \p{Scx=Hang}, \p{Hang}) (11_775)\p{Script_Extensions: Hiragana} (Short: \p{Scx=Hira}, \p{Hira}) (431)\p{Script_Extensions: Katakana} (Short: \p{Scx=Kana}, \p{Kana}) (356)\p{Script_Extensions: Latin} (Short: \p{Scx=Latn}, \p{Latn}) (1403)\p{Script_Extensions: Unknown} (Short: \p{Scx=Zzzz}, \p{Zzzz}) (970_188 plus all above-Unicode code points)\p{Canonical_Combining_Class: 0} → \p{Canonical_Combining_Class=Not_Reordered} (1_113_240 plus all above-Unicode code points)\p{Canonical_Combining_Class: 230} → \p{Canonical_Combining_Class=Above} (484)\p{Canonical_Combining_Class: Above} (Short: \p{Ccc=A}) (484)\p{Canonical_Combining_Class: Below} (Short: \p{Ccc=B}) (165)\p{Canonical_Combining_Class: Virama} (Short: \p{Ccc=VR}) (61)\p{Canonical_Combining_Class: Not_Reordered} (Short: \p{Ccc=NR}) (1_113_240 plus all above-Unicode code points)\p{Grapheme_Cluster_Break: CN} → \p{Grapheme_Cluster_Break=Control} (3886)\p{Grapheme_Cluster_Break: CR} (Short: \p{GCB=CR}) (1: [\r])\p{Grapheme_Cluster_Break: EX} → \p{Grapheme_Cluster_Break=Extend} (1984)\p{Grapheme_Cluster_Break: L} (Short: \p{GCB=L}) (125)\p{Grapheme_Cluster_Break: LF} (Short: \p{GCB=LF}) (1: [\n])\p{Grapheme_Cluster_Break: LV} (Short: \p{GCB=LV}) (399)\p{Grapheme_Cluster_Break: LVT} (Short: \p{GCB=LVT}) (10_773)\p{Grapheme_Cluster_Break: Other} (Short: \p{GCB=XX}) (1_096_272 plus all above-Unicode code points)\p{Grapheme_Cluster_Break: T} (Short: \p{GCB=T}) (137)\p{Grapheme_Cluster_Break: V} (Short: \p{GCB=V}) (95)\p{Grapheme_Cluster_Break: ZWJ} (Short: \p{GCB=ZWJ}) (1: U+200D)\p{Name=*} Combination of Name and Name_Alias properties; has special loose matching rules, for which see Unicode UAX #44\p{Na=*} → \p{Name=*}\p{Is_*} → \p{*} (Any exceptions are individually noted beginning with the word NOT.)\p{In: *} → \p{Present_In: *} (Perl extension)\p{In_*} → \p{Block: *}\p{Unicode} → \p{Any} (1_114_112)Note: Flag indicators: X = Discouraged/obsolete shorthand, T = Tightly coupled with specific Unicode versions, D = Deprecated/supplanted. See full man page for complete code point range details.
\p{} and \P{} constructs that match no charactersUnicode has some property-value pairs that currently don't match anything.
💡 This happens generally either because they are obsolete, or they exist for symmetry with other forms, but no language has yet been encoded that uses them. In this version of Unicode, the following match zero code points:
\p{Canonical_Combining_Class=Attached_Below_Left}
\p{Canonical_Combining_Class=CCC133}
\p{Grapheme_Cluster_Break=E_Base}
\p{Grapheme_Cluster_Break=E_Base_GAZ}
\p{Grapheme_Cluster_Break=E_Modifier}
\p{Grapheme_Cluster_Break=Glue_After_Zwj}
\p{Word_Break=E_Base}
\p{Word_Break=E_Base_GAZ}
\p{Word_Break=E_Modifier}
\p{Word_Break=Glue_After_Zwj}
🛠️ The value of any Unicode (not including Perl extensions) character property mentioned above for any single code point is available through charprop() in Unicode::UCD. charprops_all() in Unicode::UCD returns the values of all the Unicode properties for a given code point. Besides these, all the Unicode character properties mentioned above (except for those marked as for internal use by Perl) are also accessible by prop_invlist() in Unicode::UCD. Due to their nature, not all Unicode character properties are suitable for regular expression matches, nor prop_invlist(). The remaining non-provisional, non-internal ones are accessible via prop_invmap() in Unicode::UCD (except for those that this Perl installation hasn't included; see below for which those are).
⚠️ For compatibility with other parts of Perl, all the single forms given in the table in the section above are recognized. BUT, there are some ambiguities between some Perl extensions and the Unicode properties, all of which are silently resolved in favor of the official Unicode property. To avoid surprises, you should only use prop_invmap() for forms listed in the table below, which omits the non-recommended ones. The affected forms are the Perl single form equivalents of Unicode properties, such as \p{sc} being a single-form equivalent of \p{gc=sc}, which is treated by prop_invmap() as the Script property, whose short name is sc. The table indicates the current ambiguities in the INFO column, beginning with the word NOT.
📚 The standard Unicode properties listed below are documented in <http://www.unicode.org/reports/tr44/>; Perl_Decimal_Digit is documented in prop_invmap() in Unicode::UCD. The other Perl extensions are in Other Properties in perlunicode.
📋 The first column in the table is a name for the property; the second column is an alternative name, if any, plus possibly some annotations. The alternative name is the property's full name, unless that would simply repeat the first column, in which case the second column indicates the property's short name (if different). The annotations are given only in the entry for the full name. The annotations for binary properties include a list of the first few ranges that the property matches. To avoid any ambiguity, the SPACE character is represented as \x20. If a property is obsolete, etc, the entry will be flagged with the same characters used in the table in the section above, like ⚠️ or 🔄.
| 🏷️ NAME | 📌 INFO |
|---|---|
Age | |
AHex | ASCII_Hex_Digit |
All | 🔧 (Perl extension). All code points, including those above Unicode. Same as qr/./s. U+0000..infinity |
Alnum | XPosixAlnum. 🔧 (Perl extension) |
Alpha | Alphabetic |
Alphabetic | 🏷️ (Short: Alpha). [A-Za-z\xaa\xb5\xba\xc0-\xd6\xd8-\xf6\xf8-\xff], U+0100..02C1, U+02C6..02D1, U+02E0..02E4, U+02EC, U+02EE ... |
Any | 🔧 (Perl extension). All Unicode code points. U+0000..10FFFF |
ASCII | Block=Basic_Latin. 🔧 (Perl extension). [\x00-\x7f] |
ASCII_Hex_Digit | 🏷️ (Short: AHex). [0-9A-Fa-f] |
Assigned | 🔧 (Perl extension). All assigned code points. U+0000..0377, U+037A..037F, U+0384..038A, U+038C, U+038E..03A1, U+03A3..052F ... |
Bc | Bidi_Class |
Bidi_C | Bidi_Control |
Bidi_Class | 🏷️ (Short: bc) |
Bidi_Control | 🏷️ (Short: Bidi_C). U+061C, U+200E..200F, U+202A..202E, U+2066..2069 |
Bidi_M | Bidi_Mirrored |
Bidi_Mirrored | 🏷️ (Short: Bidi_M). [\(\)<>\[\]\{\}\xab \xbb], U+0F3A..0F3D, U+169B..169C, U+2039..203A, U+2045..2046, U+207D..207E ... |
Bidi_Mirroring_Glyph | 🏷️ (Short: bmg) |
Bidi_Paired_Bracket | 🏷️ (Short: bpb) |
Bidi_Paired_Bracket_Type | 🏷️ (Short: bpt) |
Blank | XPosixBlank. 🔧 (Perl extension) |
Blk | Block |
Block | 🏷️ (Short: blk) |
Bmg | Bidi_Mirroring_Glyph |
Bpb | Bidi_Paired_Bracket |
Bpt | Bidi_Paired_Bracket_Type |
Canonical_Combining_Class | 🏷️ (Short: ccc) |
Case_Folding | 🏷️ (Short: cf) |
Case_Ignorable | 🏷️ (Short: CI). [\'.:\^`\xa8\xad\xaf\xb4 \xb7-\xb8], U+02B0..036F, U+0374..0375, U+037A, U+0384..0385, U+0387 ... |
Cased | [A-Za-z\xaa\xb5\xba\xc0-\xd6\xd8-\xf6\xf8-\xff], U+0100..01BA, U+01BC..01BF, U+01C4..0293, U+0295..02B8, U+02C0..02C1 ... |
Category | General_Category |
Ccc | Canonical_Combining_Class |
CE | Composition_Exclusion |
Cf | Case_Folding; ❗ NOT 'cf' meaning 'General_Category=Format' |
Changes_When_Casefolded | 🏷️ (Short: CWCF). [A-Z\xb5\xc0-\xd6\xd8-\xdf], U+0100, U+0102, U+0104, U+0106, U+0108 ... |
Changes_When_Casemapped | 🏷️ (Short: CWCM). [A-Za-z\xb5\xc0-\xd6\xd8-\xf6\xf8-\xff], U+0100..0137, U+0139..018C, U+018E..019A, U+019C..01A9, U+01AC..01B9 ... |
Changes_When_Lowercased | 🏷️ (Short: CWL). [A-Z\xc0-\xd6\xd8-\xde], U+0100, U+0102, U+0104, U+0106, U+0108 ... |
Changes_When_NFKC_Casefolded | 🏷️ (Short: CWKCF). [A-Z\xa0\xa8\xaa \xad\xaf\xb2-\xb5\xb8-\xba\xbc-\xbe\xc0-\xd6\xd8-\xdf], U+0100, U+0102, U+0104, U+0106, U+0108 ... |
Changes_When_Titlecased | 🏷️ (Short: CWT). [a-z\xb5\xdf-\xf6\xf8-\xff], U+0101, U+0103, U+0105, U+0107, U+0109 ... |
Changes_When_Uppercased | 🏷️ (Short: CWU). [a-z\xb5\xdf-\xf6\xf8-\xff], U+0101, U+0103, U+0105, U+0107, U+0109 ... |
CI | Case_Ignorable |
Cntrl | XPosixCntrl (=General_Category=Control). 🔧 (Perl extension) |
Comp_Ex | Full_Composition_Exclusion |
Composition_Exclusion | 🏷️ (Short: CE). U+0958..095F, U+09DC..09DD, U+09DF, U+0A33, U+0A36, U+0A59..0A5B ... |
CWCF | Changes_When_Casefolded |
CWCM | Changes_When_Casemapped |
CWKCF | Changes_When_NFKC_Casefolded |
CWL | Changes_When_Lowercased |
CWT | Changes_When_Titlecased |
CWU | Changes_When_Uppercased |
Dash | [\-], U+058A, U+05BE, U+1400, U+1806, U+2010..2015 ... |
Decomposition_Mapping | 🏷️ (Short: dm) |
Decomposition_Type | 🏷️ (Short: dt) |
Default_Ignorable_Code_Point | 🏷️ (Short: DI). [\xad], U+034F, U+061C, U+115F..1160, U+17B4..17B5, U+180B..180E ... |
Dep | Deprecated |
Deprecated | 🏷️ (Short: Dep). U+0149, U+0673, U+0F77, U+0F79, U+17A3..17A4, U+206A..206F ... |
DI | Default_Ignorable_Code_Point |
Dia | Diacritic |
Diacritic | 🏷️ (Short: Dia). [\^`\xa8\xaf\xb4\xb7-\xb8], U+02B0..034E, U+0350..0357, U+035D..0362, U+0374..0375, U+037A ... |
Digit | XPosixDigit (=General_Category=Decimal_Number). 🔧 (Perl extension) |
Dm | Decomposition_Mapping |
Dt | Decomposition_Type |
Ea | East_Asian_Width |
East_Asian_Width | 🏷️ (Short: ea) |
EBase | Emoji_Modifier_Base |
EComp | Emoji_Component |
EMod | Emoji_Modifier |
Emoji | [#*0-9\xa9\xae], U+203C, U+2049, U+2122, U+2139, U+2194..2199 ... |
Emoji_Component | 🏷️ (Short: EComp). [#*0-9], U+200D, U+20E3, U+FE0F, U+1F1E6..1F1FF, U+1F3FB..1F3FF ... |
Emoji_Modifier | 🏷️ (Short: EMod). U+1F3FB..1F3FF |
Emoji_Modifier_Base | 🏷️ (Short: EBase). U+261D, U+26F9, U+270A..270D, U+1F385, U+1F3C2..1F3C4, U+1F3C7 ... |
Emoji_Presentation | 🏷️ (Short: EPres). U+231A..231B, U+23E9..23EC, U+23F0, U+23F3, U+25FD..25FE, U+2614..2615 ... |
EPres | Emoji_Presentation |
EqUIdeo | Equivalent_Unified_Ideograph |
Equivalent_Unified_Ideograph | 🏷️ (Short: EqUIdeo) |
Ext | Extender |
Extended_Pictographic | 🏷️ (Short: ExtPict). [\xa9\xae], U+203C, U+2049, U+2122, U+2139, U+2194..2199 ... |
Extender | 🏷️ (Short: Ext). [\xb7], U+02D0..02D1, U+0640, U+07FA, U+0B55, U+0E46 ... |
ExtPict | Extended_Pictographic |
Full_Composition_Exclusion | 🏷️ (Short: Comp_Ex). U+0340..0341, U+0343..0344, U+0374, U+037E, U+0387, U+0958..095F ... |
Gc | General_Category |
GCB | Grapheme_Cluster_Break |
General_Category | 🏷️ (Short: gc) |
Gr_Base | Grapheme_Base |
Gr_Ext | Grapheme_Extend |
Graph | XPosixGraph. 🔧 (Perl extension) |
Grapheme_Base | 🏷️ (Short: Gr_Base). [\x20-\x7e\xa0-\xac \xae-\xff], U+0100..02FF, U+0370..0377, U+037A..037F, U+0384..038A, U+038C ... |
Grapheme_Cluster_Break | 🏷️ (Short: GCB) |
Grapheme_Extend | 🏷️ (Short: Gr_Ext). U+0300..036F, U+0483..0489, U+0591..05BD, U+05BF, U+05C1..05C2, U+05C4..05C5 ... |
Hangul_Syllable_Type | 🏷️ (Short: hst) |
Hex | Hex_Digit |
Hex_Digit | 🏷️ (Short: Hex). [0-9A-Fa-f], U+FF10..FF19, U+FF21..FF26, U+FF41..FF46 |
HorizSpace | XPosixBlank. 🔧 (Perl extension) |
Hst | Hangul_Syllable_Type |
⚠️ Hyphen | [\-\xad], U+058A, U+1806, U+2010..2011, U+2E17, U+30FB ... 🔄 Supplanted by Line_Break property values; see www.unicode.org/reports/tr14 |
ID_Continue | 🏷️ (Short: IDC). [0-9A-Z_a-z\xaa\xb5\xb7 \xba\xc0-\xd6\xd8-\xf6\xf8-\xff], U+0100..02C1, U+02C6..02D1, U+02E0..02E4, U+02EC, U+02EE ... |
ID_Start | 🏷️ (Short: IDS). [A-Za-z\xaa\xb5\xba\xc0-\xd6\xd8-\xf6\xf8-\xff], U+0100..02C1, U+02C6..02D1, U+02E0..02E4, U+02EC, U+02EE ... |
IDC | ID_Continue |
Identifier_Status | |
Identifier_Type | |
Ideo | Ideographic |
Ideographic | 🏷️ (Short: Ideo). U+3006..3007, U+3021..3029, U+3038..303A, U+3400..4DBF, U+4E00..9FFC, U+F900..FA6D ... |
IDS | ID_Start |
IDS_Binary_Operator | 🏷️ (Short: IDSB). U+2FF0..2FF1, U+2FF4..2FFB |
IDS_Trinary_Operator | 🏷️ (Short: IDST). U+2FF2..2FF3 |
IDSB | IDS_Binary_Operator |
IDST | IDS_Trinary_Operator |
In | Present_In. 🔧 (Perl extension) |
Indic_Positional_Category | 🏷️ (Short: InPC) |
Indic_Syllabic_Category | 🏷️ (Short: InSC) |
InPC | Indic_Positional_Category |
InSC | Indic_Syllabic_Category |
Isc | ISO_Comment; ❗ NOT 'isc' meaning 'General_Category=Other' |
ISO_Comment | 🏷️ (Short: isc) |
Jg | Joining_Group |
Join_C | Join_Control |
Join_Control | 🏷️ (Short: Join_C). U+200C..200D |
Joining_Group | 🏷️ (Short: jg) |
Joining_Type | 🏷️ (Short: jt) |
Jt | Joining_Type |
Lb | Line_Break |
Lc | Lowercase_Mapping; ❗ NOT 'lc' meaning 'General_Category=Cased_Letter' |
Line_Break | 🏷️ (Short: lb) |
LOE | Logical_Order_Exception |
Logical_Order_Exception | 🏷️ (Short: LOE). U+0E40..0E44, U+0EC0..0EC4, U+19B5..19B7, U+19BA, U+AAB5..AAB6, U+AAB9 ... |
Lower | Lowercase |
Lowercase | 🏷️ (Short: Lower). [a-z\xaa\xb5\xba\xdf-\xf6\xf8-\xff], U+0101, U+0103, U+0105, U+0107, U+0109 ... |
Lowercase_Mapping | 🏷️ (Short: lc) |
Math | [+<=>\^\|~\xac\xb1\xd7\xf7], U+03D0..03D2, U+03D5, U+03F0..03F1, U+03F4..03F6, U+0606..0608 ... |
Na | Name |
Na1 | Unicode_1_Name |
Name | 🏷️ (Short: na) |
Name_Alias | |
NChar | Noncharacter_Code_Point |
NFC_QC | NFC_Quick_Check |
NFC_Quick_Check | 🏷️ (Short: NFC_QC) |
NFD_QC | NFD_Quick_Check |
NFD_Quick_Check | 🏷️ (Short: NFD_QC) |
NFKC_Casefold | 🏷️ (Short: NFKC_CF) |
NFKC_CF | NFKC_Casefold |
NFKC_QC | NFKC_Quick_Check |
NFKC_Quick_Check | 🏷️ (Short: NFKC_QC) |
NFKD_QC | NFKD_Quick_Check |
NFKD_Quick_Check | 🏷️ (Short: NFKD_QC) |
Noncharacter_Code_Point | 🏷️ (Short: NChar). U+FDD0..FDEF, U+FFFE..FFFF, U+1FFFE..1FFFF, U+2FFFE..2FFFF, U+3FFFE..3FFFF, U+4FFFE..4FFFF ... |
Nt | Numeric_Type |
Numeric_Type | 🏷️ (Short: nt) |
Numeric_Value | 🏷️ (Short: nv) |
Nv | Numeric_Value |
Pat_Syn | Pattern_Syntax |
Pat_WS | Pattern_White_Space |
Pattern_Syntax | 🏷️ (Short: Pat_Syn). [!\"#\$\%&\'\(\)*+,\-.\/:;<=>?\@\[\\\]\^`\{\|\}~\xa1-\xa7\xa9 \xab-\xac\xae\xb0-\xb1\xb6\xbb\xbf\xd7 \xf7], U+2010..2027, U+2030..203E, U+2041..2053, U+2055..205E, U+2190..245F ... |
Pattern_White_Space | 🏷️ (Short: Pat_WS). [\t\n\cK\f\r\x20\x85], U+200E..200F, U+2028..2029 |
PCM | Prepended_Concatenation_Mark |
Perl_Decimal_Digit | 🔧 (Perl extension) |
PerlSpace | PosixSpace. 🔧 (Perl extension) |
PerlWord | PosixWord. 🔧 (Perl extension) |
PosixAlnum | 🔧 (Perl extension). [0-9A-Za-z] |
PosixAlpha | 🔧 (Perl extension). [A-Za-z] |
PosixBlank | 🔧 (Perl extension). [\t\x20] |
PosixCntrl | 🔧 (Perl extension). ASCII control characters. ACK, BEL, BS, CAN, CR, DC1, DC2, DC3, DC4, DEL, DLE, ENQ, EOM, EOT, ESC, ETB, ETX, FF, FS, GS, HT, LF, NAK, NUL, RS, SI, SO, SOH, STX, SUB, SYN, US, VT |
PosixDigit | 🔧 (Perl extension). [0-9] |
PosixGraph | 🔧 (Perl extension). [!\"#\$\%&\'\(\)*+,\-.\/0-9:;<=>?\@A-Z\[\\\]\^_`a-z\{\|\}~] |
PosixLower | 🔧 (Perl extension). [a-z] |
PosixPrint | 🔧 (Perl extension). [\x20-\x7e] |
PosixPunct | 🔧 (Perl extension). [!\"#\$\%&\'\(\)*+,\-.\/:;<=>?\@\[\\\]\^_`\{\|\}~] |
PosixSpace | 🔧 (Perl extension). [\t\n\cK\f\r\x20] |
PosixUpper | 🔧 (Perl extension). [A-Z] |
PosixWord | 🔧 (Perl extension). \w, restricted to ASCII. [0-9A-Z_a-z] |
PosixXDigit | ASCII_Hex_Digit. 🔧 (Perl extension). [0-9A-Fa-f] |
Prepended_Concatenation_Mark | 🏷️ (Short: PCM). U+0600..0605, U+06DD, U+070F, U+08E2, U+110BD, U+110CD |
Present_In | 🏷️ (Short: In). 🔧 (Perl extension) |
Print | XPosixPrint. 🔧 (Perl extension) |
Punct | General_Category=Punctuation. 🔧 (Perl extension). [!\"#\%&\'\(\)*,\-.\/:;?\@ \[\\\]_\{\}\xa1\xa7\xab\xb6-\xb7\xbb\xbf], U+037E, U+0387, U+055A..055F, U+0589..058A, U+05BE ... |
QMark | Quotation_Mark |
Quotation_Mark | 🏷️ (Short: QMark). [\"\'\xab\xbb], U+2018..201F, U+2039..203A, U+2E42, U+300C..300F, U+301D..301F ... |
Radical | U+2E80..2E99, U+2E9B..2EF3, U+2F00..2FD5 |
Regional_Indicator | 🏷️ (Short: RI). U+1F1E6..1F1FF |
RI | Regional_Indicator |
SB | Sentence_Break |
Sc | Script; ❗ NOT 'sc' meaning 'General_Category=Currency_Symbol' |
Scf | Simple_Case_Folding |
Script | 🏷️ (Short: sc) |
Script_Extensions | 🏷️ (Short: scx) |
Scx | Script_Extensions |
SD | Soft_Dotted |
Sentence_Break | 🏷️ (Short: SB) |
Sentence_Terminal | 🏷️ (Short: STerm). [!.?], U+0589, U+061E..061F, U+06D4, U+0700..0702, U+07F9 ... |
Sfc | Simple_Case_Folding |
Simple_Case_Folding | 🏷️ (Short: scf) |
Simple_Lowercase_Mapping | 🏷️ (Short: slc) |
Simple_Titlecase_Mapping | 🏷️ (Short: stc) |
Simple_Uppercase_Mapping | 🏷️ (Short: suc) |
Slc | Simple_Lowercase_Mapping |
Soft_Dotted | 🏷️ (Short: SD). [i-j], U+012F, U+0249, U+0268, U+029D, U+02B2 ... |
Space | White_Space |
SpacePerl | XPosixSpace. 🔧 (Perl extension) |
Stc | Simple_Titlecase_Mapping |
STerm | Sentence_Terminal |
Suc | Simple_Uppercase_Mapping |
Tc | Titlecase_Mapping |
Term | Terminal_Punctuation |
Terminal_Punctuation | 🏷️ (Short: Term). [!,.:;?], U+037E, U+0387, U+0589, U+05C3, U+060C ... |
Title | Titlecase. 🔧 (Perl extension) |
Titlecase | 🏷️ (Short: Title). 🔧 (Perl extension). (= \p{Gc=Lt}). U+01C5, U+01C8, U+01CB, U+01F2, U+1F88..1F8F, U+1F98..1F9F ... |
Titlecase_Mapping | 🏷️ (Short: tc) |
Uc | Uppercase_Mapping |
UIdeo | Unified_Ideograph |
Unicode | Any. 🔧 (Perl extension) |
Unicode_1_Name | 🏷️ (Short: na1) |
Unified_Ideograph | 🏷️ (Short: UIdeo). U+3400..4DBF, U+4E00..9FFC, U+FA0E..FA0F, U+FA11, U+FA13..FA14, U+FA1F ... |
Upper | Uppercase |
Uppercase | 🏷️ (Short: Upper). [A-Z\xc0-\xd6\xd8-\xde], U+0100, U+0102, U+0104, U+0106, U+0108 ... |
Uppercase_Mapping | 🏷️ (Short: uc) |
Variation_Selector | 🏷️ (Short: VS). U+180B..180D, U+FE00..FE0F, U+E0100..E01EF |
Vertical_Orientation | 🏷️ (Short: vo) |
VertSpace | 🔧 (Perl extension). \v. [\n\cK\f\r\x85], U+2028..2029 |
Vo | Vertical_Orientation |
VS | Variation_Selector |
WB | Word_Break |
White_Space | 🏷️ (Short: WSpace). [\t\n\cK\f\r\x20\x85 \xa0], U+1680, U+2000..200A, U+2028..2029, U+202F, U+205F ... |
Word | XPosixWord. 🔧 (Perl extension) |
Word_Break | 🏷️ (Short: WB) |
WSpace | White_Space |
XDigit | XPosixXDigit (=Hex_Digit). 🔧 (Perl extension) |
XID_Continue | 🏷️ (Short: XIDC). [0-9A-Z_a-z\xaa\xb5\xb7 \xba\xc0-\xd6\xd8-\xf6\xf8-\xff], U+0100..02C1, U+02C6..02D1, U+02E0..02E4, U+02EC, U+02EE ... |
XID_Start | 🏷️ (Short: XIDS). [A-Za-z\xaa\xb5\xba\xc0-\xd6\xd8-\xf6\xf8-\xff], U+0100..02C1, U+02C6..02D1, U+02E0..02E4, U+02EC, U+02EE ... |
XIDC | XID_Continue |
XIDS | XID_Start |
XPerlSpace | XPosixSpace. 🔧 (Perl extension) |
XPosixAlnum | 🏷️ (Short: Alnum). 🔧 (Perl extension). Alphabetic and (decimal) Numeric. [0-9A-Za-z\xaa\xb5\xba\xc0-\xd6\xd8-\xf6\xf8-\xff], U+0100..02C1, U+02C6..02D1, U+02E0..02E4, U+02EC, U+02EE ... |
XPosixAlpha | Alphabetic. 🔧 (Perl extension). [A-Za-z \xaa\xb5\xba\xc0-\xd6\xd8-\xf6\xf8-\xff], U+0100..02C1, U+02C6..02D1, U+02E0..02E4, U+02EC, U+02EE ... |
XPosixBlank | 🏷️ (Short: Blank). 🔧 (Perl extension). \h, Horizontal white space. [\t\x20\xa0], U+1680, U+2000..200A, U+202F, U+205F, U+3000 |
XPosixCntrl | General_Category=Control (Short: Cntrl). 🔧 (Perl extension). Control characters. [\x00-\x1f\x7f-\x9f] |
XPosixDigit | General_Category=Decimal_Number (Short: Digit). 🔧 (Perl extension). [0-9] + all other decimal digits. [0-9], U+0660..0669, U+06F0..06F9, U+07C0..07C9, U+0966..096F, U+09E6..09EF ... |
XPosixGraph | 🏷️ (Short: Graph). 🔧 (Perl extension). Characters that are graphical. [!\"#\$ \%&\'\(\)*+,\-.\/0-9:;<=>?\@A-Z\[\\\] \^_`a-z\{\|\}~\xa1-\xff], U+0100..0377, U+037A..037F, U+0384..038A, U+038C, U+038E..03A1 ... |
XPosixLower | Lowercase. 🔧 (Perl extension). [a-z\xaa \xb5\xba\xdf-\xf6\xf8-\xff], U+0101, U+0103, U+0105, U+0107, U+0109 ... |
XPosixPrint | 🏷️ (Short: Print). 🔧 (Perl extension). Characters that are graphical plus space characters (but no controls). [\x20-\x7e \xa0-\xff], U+0100..0377, U+037A..037F, U+0384..038A, U+038C, U+038E..03A1 ... |
XPosixPunct | 🔧 (Perl extension). \p{Punct} + ASCII-range \p{Symbol}. [!\"#\$\%&\'\(\)*+,\-.\/:;<=>?\@\[\\\]\^_`\{\|\}~\xa1\xa7\xab\xb6-\xb7\xbb\xbf], U+037E, U+0387, U+055A..055F, U+0589..058A, U+05BE ... |
XPosixSpace | 🔧 (Perl extension). \s including beyond ASCII and vertical tab. [\t\n\cK\f\r\x20 \x85\xa0], U+1680, U+2000..200A, U+2028..2029, U+202F, U+205F ... |
XPosixUpper | Uppercase. 🔧 (Perl extension). [A-Z\xc0-\xd6\xd8-\xde], U+0100, U+0102, U+0104, U+0106, U+0108 ... |
XPosixWord | 🏷️ (Short: Word). 🔧 (Perl extension). \w, including beyond ASCII; = \p{Alnum} + \pM + \p{Pc} + \p{Join_Control}. [0-9A-Z_a-z \xaa\xb5\xba\xc0-\xd6\xd8-\xf6\xf8-\xff], U+0100..02C1, U+02C6..02D1, U+02E0..02E4, U+02EC, U+02EE ... |
XPosixXDigit | Hex_Digit (Short: XDigit). 🔧 (Perl extension). [0-9A-Fa-f], U+FF10..FF19, U+FF21..FF26, U+FF41..FF46 |
Certain properties are accessible also via core function calls. These are:
Lowercase_Mapping — lc() and lcfirst()Titlecase_Mapping — ucfirst()Uppercase_Mapping — uc()Also, Case_Folding is accessible through the /i modifier in regular expressions, the \F transliteration escape, and the fc operator.
Besides being able to say \p{Name=...}, the Name and Name_Aliases properties are accessible through the \N{} interpolation in double-quoted strings and regular expressions; and functions charnames::viacode(), charnames::vianame(), and charnames::string_vianame() (which require a use charnames (); to be specified).
Finally, most properties related to decomposition are accessible via Unicode::Normalize.
Perl will generate an error for a few character properties in Unicode when used in a regular expression. The non-Unihan ones are listed below, with the reasons they are not accepted, perhaps with work-arounds. The short names for the properties are listed enclosed in parentheses. As described after the list, an installation can change the defaults and choose to accept any of these. The list is machine generated based on the choices made for the installation that generated this document.
Expands_On_NFC (XO_NFC)Expands_On_NFD (XO_NFD)Expands_On_NFKC (XO_NFKC)Expands_On_NFKD (XO_NFKD)Grapheme_Link (Gr_Link)ccc=vr (Canonical_Combining_Class=Virama)
Jamo_Short_Name (JSN)Other_Alphabetic (OAlpha)Other_Default_Ignorable_Code_Point (ODI)Other_Grapheme_Extend (OGr_Ext)Other_ID_Continue (OIDC)Other_ID_Start (OIDS)Other_Lowercase (OLower)Other_Math (OMath)Other_Uppercase (OUpper)Script=Katakana_Or_Hiragana (sc=Hrkt)Script=Common. Consider instead using Script_Extensions=Katakana or Script_Extensions=Hiragana (or both)
Script_Extensions=Katakana_Or_Hiragana (scx=Hrkt)Script_Extensions=Katakana or Script_Extensions=Hiragana
An installation can choose to allow any of these to be matched by downloading the Unicode database from <http://www.unicode.org/Public/> to $Config{privlib}/unicore/ in the Perl source tree, changing the controlling lists contained in the program $Config{privlib}/unicore/mktables and then re-compiling and installing. (%Config is available from the Config module). Also, perl can be recompiled to operate on an earlier version of the Unicode standard. Further information is at $Config{privlib}/unicore/README.perl.
The Unicode data base is delivered in two different formats. The XML version is valid for more modern Unicode releases. The other version is a collection of files. The two are intended to give equivalent information. Perl uses the older form; this allows you to recompile Perl to use early Unicode releases.
The only non-character property that Perl currently supports is Named Sequences, in which a sequence of code points is given a name and generally treated as a single entity. (Perl supports these via the \N{...} double-quotish construct, charnames::string_vianame(name) in charnames, and namedseq() in Unicode::UCD.
Below is a list of the files in the Unicode data base that Perl doesn't currently use, along with very brief descriptions of their purposes. Some of the names of the files have been shortened from those that Unicode uses, in order to allow them to be distinguishable from similarly named files on file systems for which only the first 8 characters of a name are significant.
auxiliary/GraphemeBreakTest.htmlauxiliary/LineBreakTest.htmlauxiliary/SentenceBreakTest.htmlauxiliary/WordBreakTest.htmlBidiCharacterTest.txtBidiTest.txtNormTest.txtCJKRadicals.txtkRSUnicode property values to corresponding code pointsemoji/ReadMe.txtReadMe.txtEmojiSources.txtextracted/DName.txtIndex.txtNamedSqProv.txtNamedSequences.txt and recompile perlNamesList.htmlNamesList.txtNamesList.txtNormalizationCorrections.txtNushuSources.txtStandardizedVariants.htmlStandardizedVariants.txt.StandardizedVariants.txtTangutSources.txtUSourceData.txtUSourceGlyphs.pdfUSourceData.txtperlrecharclassperlunicodeperl v5.34.0 2026-06-23 PERLUNIPROPS(1)
Generated by phpman v4.10.0-16-g1a0e228 Author: Che Dong Under GNU General Public License
2026-09-22 08:10 @216.73.216.44
CrawledBy Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)