所有unicode的打开/closures括号的列表?
什么是每个unicode括号字符的列表(包括,例如: {}[]()<>
)? 什么是searchunicode字符的好方法?
有一个纯文本数据库 ,提供Unicode Consortium提供的每个Unicode字符的信息; 格式在Unicode附件#44中描述。 主要信息包含在UnicodeData.txt中 。 在General_Category字段(第三个字段,由;
分隔)中,用Ps
(标点符号开始)和Pe
(标点符号结束)来表示打开和closures标点符号。 寻找那些angular色,你会发现你在找什么。
请注意,并非所有您认为括号的字符都可能列出; 例如引号(包括“«»”)。 用Pi
和Pf
(最初和最后的标点符号)表示,所以你可能也想包括这些。 而一些字符(如<
和>
在某些上下文(如HTML / XML)中用作括号,而在UnicodeData.txt中它们被视为math符号( Sm
)。 那些你必须手工find的; 没有预先确定的那些列表。
这里有一个快速的Bash脚本来获取这些信息及其输出。 我已经包含括号和引号。 (注意:它看起来像Bash的UTF-8打印有一个错误,导致它不能正确地打印U + 00AB“«”和U + 00BB“»”,这就是为什么这些显示为?)。
while IFS=';' read number name category rest do if [[ "$category" =~ Ps|Pe|Pi|Pf ]] then printf "%s (U+%s, %s): \u"$number"\n" "$name" "$number" "$category" fi done <UnicodeData.txt
左括号(U + 0028,Ps):( 右括号(U + 0029,Pe):) 左方支架(U + 005B,Ps):[ 右方括号(U + 005D,Pe):] 左CURLY支架(U + 007B,Ps):{ RIGHT CURLY BRACKET(U + 007D,Pe):} 左向双angular引号(U + 00AB,Pi):? 正确的双angular度引号(U + 00BB,Pf):? TIBETAN MARK GUG RTAGS GYON(U + 0F3A,Ps):( TIBETAN MARK GUG RTAGS GYAS(U + 0F3B,Pe):) TIBETAN MARK ANG KHANG GYON(U + 0F3C,Ps):( TIBETAN MARK ANG KHANG GYAS(U + 0F3D,Pe):) OGHAM FEATHER MARK(U + 169B,Ps):᚛ OGHAM倒退羽毛(U + 169C,Pe):᚜ 左边的单引号(U + 2018,Pi):' 正确的单引号(U + 2019,Pf):' 单低9引号(U + 201A,Ps):, 单个高反转9引号(U + 201B,Pi):' 左双引号(U + 201C,Pi):“ 右侧双引号(U + 201D,Pf):“ 双低9引号(U + 201E,Ps):“ 双重高反转9引号(U + 201F,Pi):“ 单左指向angular引号(U + 2039,Pi):< 单向右angular度引号(U + 203A,Pf):> 带有QUILL的左方支架(U + 2045,Ps):⁅ QUILL正方形支架(U + 2046,Pe):⁆ SUPERSCRIPT LEFT PARENTHESIS(U + 207D,Ps):⁽ SUPERSCRIPT RIGHT PARENTHESIS(U + 207E,Pe):⁾ 左边括号(U + 208D,Ps):₍ 简体中文(U + 208E,Pe):₎ 左指向angular支架(U + 2329,Ps):< 正确的指向angular度支架(U + 232A,Pe):> 左中间装饰品(U + 2768,Ps):❨ 中等权利的包庇品(U + 2769,Pe):❩ 中等平展的左包边饰品(U + 276A,Ps):❪ 中等平展的包装饰物(U + 276B,Pe):❫ 中左指angular支架(U + 276C,Ps):❬ 中等右指angular支架(U + 276D,Pe):❭ 重左指向angular标志装饰(U + 276E,Ps):❮ 重磅指向angular标牌(U + 276F,Pe):❯ 重型左指angular支架(U + 2770,Ps):❰ 沉重的指向angular度支架(U + 2771,Pe):❱ 轻左陆龟壳支架饰品(U + 2772,Ps):❲ 轻右玳瑁外套饰品(U + 2773,Pe):❳ 中左支架饰品(U + 2774,Ps):❴ 中号右卷手镯(U + 2775,Pe):❵ 左边的S形袋子分隔符(U + 27C5,Ps):⟅ 正确的S形袋子分隔符(U + 27C6,Pe):⟆ math左方白支架(U + 27E6,Ps):⟦ math右方白支架(U + 27E7,Pe):⟧ math左angular支架(U + 27E8,Ps):⟨ math右angular支架(U + 27E9,Pe):⟩ math左angular双angular支架(U + 27EA,Ps):« math正确的双angular支架(U + 27EB,Pe):» math左白色龟壳架(U + 27EC,Ps):⟬ math右白色龟壳支架(U + 27ED,Pe):⟭ math左平展包容(U + 27EE,Ps):⟮ math正确的平滑括号(U + 27EF,Pe):⟯ 左白色卷发(U + 2983,Ps):⦃ RIGHT白色CURLY BRACKET(U + 2984,Pe):⦄ 左白副本(U + 2985,Ps):⦅ 白色包装(U + 2986,Pe):⦆ Zlogging左图像支架(U + 2987,Ps):⦇ Z符号右图像支架(U + 2988,Pe):⦈ Zlogging左绑定支架(U + 2989,Ps):⦉ Z符号正确的绑定支架(U + 298A,Pe):⦊ 带下巴的左方支架(U + 298B,Ps):⦋ 右下方带底架(U + 298C,Pe):⦌ 左上angular支架(U + 298D,Ps):⦍ 右下angular的右方支架(U + 298E,Pe):⦎ 左下angularT L(U + 298F,Ps):⦏ 右上angular(右上angular)(U + 2990,Pe):⦐ 左angular支架(U + 2991,Ps):⦑ 带angular度的直angular支架(U + 2992,Pe):⦒ 左侧弧形支架(U + 2993,Ps):⦓ 右圆弧大支架(U + 2994,Pe):⦔ 双圆弧大号支架(U + 2995,Ps):⦕ DOUBLE RIGHT ARC LESS-THAN BRACKET(U + 2996,Pe):⦖ 左黑色龟壳外套(U + 2997,Ps):⦗ 正确的黑色乌龟壳支架(U + 2998,Pe):⦘ 左边W F(U + 29D8,Ps):⧘ (U + 29D9,Pe):⧙ 左双重F((U + 29DA,Ps):⧚ 正确的双重逃避(U + 29DB,Pe):⧛ 左手弯曲angular度支架(U + 29FC,Ps):⧼ 右手弯曲angular度支架(U + 29FD,Pe):⧽ 左取代支架(U + 2E02,Pi):⸂ 合适的替代支架(U + 2E03,Pf):⸃ 左侧替代支架(U + 2E04,Pi):⸄ 右侧替代支架(U + 2E05,Pf):⸅ 左转换支架(U + 2E09,Pi):⸉ 右转换支架(U + 2E0A,Pf):⸊ 提升疏忽支架(U + 2E0C,Pi):⸌ 右提升忽略支架(U + 2E0D,Pf):⸍ 左低支架支架(U + 2E1C,Pi):⸜ 右下肢支架(U + 2E1D,Pf):⸝ 立式竖条(U + 2E20,Pi):⸠ (V + 2E21,Pf):⸡ 左上半支架(U + 2E22,Ps):⸢ 顶部右半支架(U + 2E23,Pe):⸣ 左下半支架(U + 2E24,Ps):⸤ 右下半支架(U + 2E25,Pe):⸥ 左边的U型支架(U + 2E26,Ps):⸦ U型夹(U + 2E27,Pe):⸧ 左双亲(U + 2E28,Ps):⸨ 正确的双亲(U + 2E29,Pe):⸩ 左angular支架(U + 3008,Ps):< 右angular支架(U + 3009,Pe):> 左双angular支架(U + 300A,Ps):“ 正确的双angular支架(U + 300B,Pe):“ 左angular支架(U + 300C,Ps):「 RIGHT CORNER BRACKET(U + 300D,Pe):」 左白angular支架(U + 300E,Ps):「 RIGHT WHITE CORNER BRACKET(U + 300F,Pe):」 左黑手套(U + 3010,Ps):【 右手黑色支架(U + 3011,Pe):】 左玳瑁外套(U + 3014,Ps):〔 乌龟壳支架(U + 3015,Pe): 左白色支架(U + 3016,Ps):〖 右白色支架(U + 3017,Pe):〗 左白玳瑁外套(U + 3018,Ps):〘 白色的乌龟壳支架(U + 3019,Pe):〙 左白色方形支架(U + 301A,Ps):[ 右方白色支架(U + 301B,Pe):= 反转双引号(U + 301D,Ps):“ 双引号(U + 301E,Pe):“ 低双引号(U + 301F,Pe):“ ORNATE LEFT PARENTHESIS(U + FD3E,Ps):( ORNATE RIGHT PARENTHESIS(U + FD3F,Pe):) 垂直左白骨架(U + FE17,Ps)的介绍forms:︗ 垂直右白色制动器的展示forms(U + FE18,Pe):︘ 左括号(U + FE35,Ps)的表示forms:( 垂直右括号(U + FE36,Pe)的表示forms:) 垂直左支架的展示forms(U + FE37,Ps):{ 垂直右曲线支架(U + FE38,Pe)的展示forms:} 垂直左玳瑁壳支架的展示forms(U + FE39,Ps):︹ 垂直右玳瑁壳支架(U + FE3A,Pe)的展示forms:︺ 垂直左黑色支架(U + FE3B,Ps)的展示forms:︻ 垂直右黑色支架(U + FE3C,Pe)的展示forms:︼ 左右双angular支架的展示forms(U + FE3D,Ps):︽ 直angular双angular支架(U + FE3E,Pe)的展示forms:︾ 垂直左angular支架(U + FE3F,Ps)的介绍forms:︿ 垂直右angular支架的展示forms(U + FE40,Pe):﹀ 垂直左angular支架的展示forms(U + FE41,Ps):﹁ 垂直右转angular支架(U + FE42,Pe)的展示forms:﹂ 垂直左白边支架(U + FE43,Ps)的展示forms:﹃ 垂直右眼白色支架(U + FE44,Pe)的展示forms:﹄ 垂直左方括号的展示forms(U + FE47,Ps):﹇ 垂直右方括号的展示forms(U + FE48,Pe):﹈ 小左括号(U + FE59,Ps):( 小右括号(U + FE5A,Pe):) 小左膝托(U + FE5B,Ps):{ 小右曲筐(U + FE5C,Pe):} 小左玳瑁外套(U + FE5D,Ps):﹝ 小右壳龟夹(U + FE5E,Pe):· 完全左边括号(U + FF08,Ps):( 完全正确的包容(U + FF09,Pe):) 全宽左方括号(U + FF3B,Ps):[ 全宽右方括号(U + FF3D,Pe):] 全宽左CURLY支架(U + FF5B,PS):{ 完全正确的CURLY BRACKET(U + FF5D,Pe):} 全宽左白副本(U + FF5F,Ps):⦅ 完整的白色包容(U + FF60,Pe):⦆ 半angular左边支架(U + FF62,Ps):「 半angular右转angular支架(U + FF63,Pe):」
在Unicode中没有这样的规范列表,你必须定义你自己的列表。 您可以先使用Python的unicodedata
模块来探索Unicode数据库。 请注意,即使它们具有其他官方含义,即小于号和大于号,也不会find用作括号的<>
东西。
#!/usr/bin/env python2.7 import re import unicodedata for i in range(0x10000): char = unichr(i) category = unicodedata.category(char) name = unicodedata.name(char, '') if ('bracket' in name.lower() or 'paren' in name.lower() or category in ['Ps', 'Pe']): print 'U+%04x %s %s %c' % (i, category, name, char)
输出:
U+0028 Ps LEFT PARENTHESIS ( U+0029 Pe RIGHT PARENTHESIS ) U+005b Ps LEFT SQUARE BRACKET [ U+005d Pe RIGHT SQUARE BRACKET ] U+007b Ps LEFT CURLY BRACKET { U+007d Pe RIGHT CURLY BRACKET } U+0f3a Ps TIBETAN MARK GUG RTAGS GYON ༺ U+0f3b Pe TIBETAN MARK GUG RTAGS GYAS ༻ U+0f3c Ps TIBETAN MARK ANG KHANG GYON ༼ U+0f3d Pe TIBETAN MARK ANG KHANG GYAS ༽ U+169b Ps OGHAM FEATHER MARK ᚛ U+169c Pe OGHAM REVERSED FEATHER MARK ᚜ U+201a Ps SINGLE LOW-9 QUOTATION MARK ‚ U+201e Ps DOUBLE LOW-9 QUOTATION MARK „ U+2045 Ps LEFT SQUARE BRACKET WITH QUILL ⁅ U+2046 Pe RIGHT SQUARE BRACKET WITH QUILL ⁆ U+207d Ps SUPERSCRIPT LEFT PARENTHESIS ⁽ U+207e Pe SUPERSCRIPT RIGHT PARENTHESIS ⁾ U+208d Ps SUBSCRIPT LEFT PARENTHESIS ₍ U+208e Pe SUBSCRIPT RIGHT PARENTHESIS ₎ U+2329 Ps LEFT-POINTING ANGLE BRACKET 〈 U+232a Pe RIGHT-POINTING ANGLE BRACKET 〉 U+239b Sm LEFT PARENTHESIS UPPER HOOK ⎛ U+239c Sm LEFT PARENTHESIS EXTENSION ⎜ U+239d Sm LEFT PARENTHESIS LOWER HOOK ⎝ U+239e Sm RIGHT PARENTHESIS UPPER HOOK ⎞ U+239f Sm RIGHT PARENTHESIS EXTENSION ⎟ U+23a0 Sm RIGHT PARENTHESIS LOWER HOOK ⎠ U+23a1 Sm LEFT SQUARE BRACKET UPPER CORNER ⎡ U+23a2 Sm LEFT SQUARE BRACKET EXTENSION ⎢ U+23a3 Sm LEFT SQUARE BRACKET LOWER CORNER ⎣ U+23a4 Sm RIGHT SQUARE BRACKET UPPER CORNER ⎤ U+23a5 Sm RIGHT SQUARE BRACKET EXTENSION ⎥ U+23a6 Sm RIGHT SQUARE BRACKET LOWER CORNER ⎦ U+23a7 Sm LEFT CURLY BRACKET UPPER HOOK ⎧ U+23a8 Sm LEFT CURLY BRACKET MIDDLE PIECE ⎨ U+23a9 Sm LEFT CURLY BRACKET LOWER HOOK ⎩ U+23aa Sm CURLY BRACKET EXTENSION ⎪ U+23ab Sm RIGHT CURLY BRACKET UPPER HOOK ⎫ U+23ac Sm RIGHT CURLY BRACKET MIDDLE PIECE ⎬ U+23ad Sm RIGHT CURLY BRACKET LOWER HOOK ⎭ U+23b0 Sm UPPER LEFT OR LOWER RIGHT CURLY BRACKET SECTION ⎰ U+23b1 Sm UPPER RIGHT OR LOWER LEFT CURLY BRACKET SECTION ⎱ U+23b4 So TOP SQUARE BRACKET ⎴ U+23b5 So BOTTOM SQUARE BRACKET ⎵ U+23b6 So BOTTOM SQUARE BRACKET OVER TOP SQUARE BRACKET ⎶ U+23dc Sm TOP PARENTHESIS ⏜ U+23dd Sm BOTTOM PARENTHESIS ⏝ U+23de Sm TOP CURLY BRACKET ⏞ U+23df Sm BOTTOM CURLY BRACKET ⏟ U+23e0 Sm TOP TORTOISE SHELL BRACKET ⏠ U+23e1 Sm BOTTOM TORTOISE SHELL BRACKET ⏡ U+2474 No PARENTHESIZED DIGIT ONE ⑴ U+2475 No PARENTHESIZED DIGIT TWO ⑵ U+2476 No PARENTHESIZED DIGIT THREE ⑶ U+2477 No PARENTHESIZED DIGIT FOUR ⑷ U+2478 No PARENTHESIZED DIGIT FIVE ⑸ U+2479 No PARENTHESIZED DIGIT SIX ⑹ U+247a No PARENTHESIZED DIGIT SEVEN ⑺ U+247b No PARENTHESIZED DIGIT EIGHT ⑻ U+247c No PARENTHESIZED DIGIT NINE ⑼ U+247d No PARENTHESIZED NUMBER TEN ⑽ U+247e No PARENTHESIZED NUMBER ELEVEN ⑾ U+247f No PARENTHESIZED NUMBER TWELVE ⑿ U+2480 No PARENTHESIZED NUMBER THIRTEEN ⒀ U+2481 No PARENTHESIZED NUMBER FOURTEEN ⒁ U+2482 No PARENTHESIZED NUMBER FIFTEEN ⒂ U+2483 No PARENTHESIZED NUMBER SIXTEEN ⒃ U+2484 No PARENTHESIZED NUMBER SEVENTEEN ⒄ U+2485 No PARENTHESIZED NUMBER EIGHTEEN ⒅ U+2486 No PARENTHESIZED NUMBER NINETEEN ⒆ U+2487 No PARENTHESIZED NUMBER TWENTY ⒇ U+249c So PARENTHESIZED LATIN SMALL LETTER A ⒜ U+249d So PARENTHESIZED LATIN SMALL LETTER B ⒝ U+249e So PARENTHESIZED LATIN SMALL LETTER C ⒞ U+249f So PARENTHESIZED LATIN SMALL LETTER D ⒟ U+24a0 So PARENTHESIZED LATIN SMALL LETTER E ⒠ U+24a1 So PARENTHESIZED LATIN SMALL LETTER F ⒡ U+24a2 So PARENTHESIZED LATIN SMALL LETTER G ⒢ U+24a3 So PARENTHESIZED LATIN SMALL LETTER H ⒣ U+24a4 So PARENTHESIZED LATIN SMALL LETTER I ⒤ U+24a5 So PARENTHESIZED LATIN SMALL LETTER J ⒥ U+24a6 So PARENTHESIZED LATIN SMALL LETTER K ⒦ U+24a7 So PARENTHESIZED LATIN SMALL LETTER L ⒧ U+24a8 So PARENTHESIZED LATIN SMALL LETTER M ⒨ U+24a9 So PARENTHESIZED LATIN SMALL LETTER N ⒩ U+24aa So PARENTHESIZED LATIN SMALL LETTER O ⒪ U+24ab So PARENTHESIZED LATIN SMALL LETTER P ⒫ U+24ac So PARENTHESIZED LATIN SMALL LETTER Q ⒬ U+24ad So PARENTHESIZED LATIN SMALL LETTER R ⒭ U+24ae So PARENTHESIZED LATIN SMALL LETTER S ⒮ U+24af So PARENTHESIZED LATIN SMALL LETTER T ⒯ U+24b0 So PARENTHESIZED LATIN SMALL LETTER U ⒰ U+24b1 So PARENTHESIZED LATIN SMALL LETTER V ⒱ U+24b2 So PARENTHESIZED LATIN SMALL LETTER W ⒲ U+24b3 So PARENTHESIZED LATIN SMALL LETTER X ⒳ U+24b4 So PARENTHESIZED LATIN SMALL LETTER Y ⒴ U+24b5 So PARENTHESIZED LATIN SMALL LETTER Z ⒵ U+2768 Ps MEDIUM LEFT PARENTHESIS ORNAMENT ❨ U+2769 Pe MEDIUM RIGHT PARENTHESIS ORNAMENT ❩ U+276a Ps MEDIUM FLATTENED LEFT PARENTHESIS ORNAMENT ❪ U+276b Pe MEDIUM FLATTENED RIGHT PARENTHESIS ORNAMENT ❫ U+276c Ps MEDIUM LEFT-POINTING ANGLE BRACKET ORNAMENT ❬ U+276d Pe MEDIUM RIGHT-POINTING ANGLE BRACKET ORNAMENT ❭ U+276e Ps HEAVY LEFT-POINTING ANGLE QUOTATION MARK ORNAMENT ❮ U+276f Pe HEAVY RIGHT-POINTING ANGLE QUOTATION MARK ORNAMENT ❯ U+2770 Ps HEAVY LEFT-POINTING ANGLE BRACKET ORNAMENT ❰ U+2771 Pe HEAVY RIGHT-POINTING ANGLE BRACKET ORNAMENT ❱ U+2772 Ps LIGHT LEFT TORTOISE SHELL BRACKET ORNAMENT ❲ U+2773 Pe LIGHT RIGHT TORTOISE SHELL BRACKET ORNAMENT ❳ U+2774 Ps MEDIUM LEFT CURLY BRACKET ORNAMENT ❴ U+2775 Pe MEDIUM RIGHT CURLY BRACKET ORNAMENT ❵ U+27c5 Ps LEFT S-SHAPED BAG DELIMITER ⟅ U+27c6 Pe RIGHT S-SHAPED BAG DELIMITER ⟆ U+27e6 Ps MATHEMATICAL LEFT WHITE SQUARE BRACKET ⟦ U+27e7 Pe MATHEMATICAL RIGHT WHITE SQUARE BRACKET ⟧ U+27e8 Ps MATHEMATICAL LEFT ANGLE BRACKET ⟨ U+27e9 Pe MATHEMATICAL RIGHT ANGLE BRACKET ⟩ U+27ea Ps MATHEMATICAL LEFT DOUBLE ANGLE BRACKET ⟪ U+27eb Pe MATHEMATICAL RIGHT DOUBLE ANGLE BRACKET ⟫ U+27ec Ps MATHEMATICAL LEFT WHITE TORTOISE SHELL BRACKET ⟬ U+27ed Pe MATHEMATICAL RIGHT WHITE TORTOISE SHELL BRACKET ⟭ U+27ee Ps MATHEMATICAL LEFT FLATTENED PARENTHESIS ⟮ U+27ef Pe MATHEMATICAL RIGHT FLATTENED PARENTHESIS ⟯ U+2983 Ps LEFT WHITE CURLY BRACKET ⦃ U+2984 Pe RIGHT WHITE CURLY BRACKET ⦄ U+2985 Ps LEFT WHITE PARENTHESIS ⦅ U+2986 Pe RIGHT WHITE PARENTHESIS ⦆ U+2987 Ps Z NOTATION LEFT IMAGE BRACKET ⦇ U+2988 Pe Z NOTATION RIGHT IMAGE BRACKET ⦈ U+2989 Ps Z NOTATION LEFT BINDING BRACKET ⦉ U+298a Pe Z NOTATION RIGHT BINDING BRACKET ⦊ U+298b Ps LEFT SQUARE BRACKET WITH UNDERBAR ⦋ U+298c Pe RIGHT SQUARE BRACKET WITH UNDERBAR ⦌ U+298d Ps LEFT SQUARE BRACKET WITH TICK IN TOP CORNER ⦍ U+298e Pe RIGHT SQUARE BRACKET WITH TICK IN BOTTOM CORNER ⦎ U+298f Ps LEFT SQUARE BRACKET WITH TICK IN BOTTOM CORNER ⦏ U+2990 Pe RIGHT SQUARE BRACKET WITH TICK IN TOP CORNER ⦐ U+2991 Ps LEFT ANGLE BRACKET WITH DOT ⦑ U+2992 Pe RIGHT ANGLE BRACKET WITH DOT ⦒ U+2993 Ps LEFT ARC LESS-THAN BRACKET ⦓ U+2994 Pe RIGHT ARC GREATER-THAN BRACKET ⦔ U+2995 Ps DOUBLE LEFT ARC GREATER-THAN BRACKET ⦕ U+2996 Pe DOUBLE RIGHT ARC LESS-THAN BRACKET ⦖ U+2997 Ps LEFT BLACK TORTOISE SHELL BRACKET ⦗ U+2998 Pe RIGHT BLACK TORTOISE SHELL BRACKET ⦘ U+29d8 Ps LEFT WIGGLY FENCE ⧘ U+29d9 Pe RIGHT WIGGLY FENCE ⧙ U+29da Ps LEFT DOUBLE WIGGLY FENCE ⧚ U+29db Pe RIGHT DOUBLE WIGGLY FENCE ⧛ U+29fc Ps LEFT-POINTING CURVED ANGLE BRACKET ⧼ U+29fd Pe RIGHT-POINTING CURVED ANGLE BRACKET ⧽ U+2e02 Pi LEFT SUBSTITUTION BRACKET ⸂ U+2e03 Pf RIGHT SUBSTITUTION BRACKET ⸃ U+2e04 Pi LEFT DOTTED SUBSTITUTION BRACKET ⸄ U+2e05 Pf RIGHT DOTTED SUBSTITUTION BRACKET ⸅ U+2e09 Pi LEFT TRANSPOSITION BRACKET ⸉ U+2e0a Pf RIGHT TRANSPOSITION BRACKET ⸊ U+2e0c Pi LEFT RAISED OMISSION BRACKET ⸌ U+2e0d Pf RIGHT RAISED OMISSION BRACKET ⸍ U+2e1c Pi LEFT LOW PARAPHRASE BRACKET ⸜ U+2e1d Pf RIGHT LOW PARAPHRASE BRACKET ⸝ U+2e22 Ps TOP LEFT HALF BRACKET ⸢ U+2e23 Pe TOP RIGHT HALF BRACKET ⸣ U+2e24 Ps BOTTOM LEFT HALF BRACKET ⸤ U+2e25 Pe BOTTOM RIGHT HALF BRACKET ⸥ U+2e26 Ps LEFT SIDEWAYS U BRACKET ⸦ U+2e27 Pe RIGHT SIDEWAYS U BRACKET ⸧ U+2e28 Ps LEFT DOUBLE PARENTHESIS ⸨ U+2e29 Pe RIGHT DOUBLE PARENTHESIS ⸩ U+3008 Ps LEFT ANGLE BRACKET 〈 U+3009 Pe RIGHT ANGLE BRACKET 〉 U+300a Ps LEFT DOUBLE ANGLE BRACKET 《 U+300b Pe RIGHT DOUBLE ANGLE BRACKET 》 U+300c Ps LEFT CORNER BRACKET 「 U+300d Pe RIGHT CORNER BRACKET 」 U+300e Ps LEFT WHITE CORNER BRACKET 『 U+300f Pe RIGHT WHITE CORNER BRACKET 』 U+3010 Ps LEFT BLACK LENTICULAR BRACKET 【 U+3011 Pe RIGHT BLACK LENTICULAR BRACKET 】 U+3014 Ps LEFT TORTOISE SHELL BRACKET 〔 U+3015 Pe RIGHT TORTOISE SHELL BRACKET 〕 U+3016 Ps LEFT WHITE LENTICULAR BRACKET 〖 U+3017 Pe RIGHT WHITE LENTICULAR BRACKET 〗 U+3018 Ps LEFT WHITE TORTOISE SHELL BRACKET 〘 U+3019 Pe RIGHT WHITE TORTOISE SHELL BRACKET 〙 U+301a Ps LEFT WHITE SQUARE BRACKET 〚 U+301b Pe RIGHT WHITE SQUARE BRACKET 〛 U+301d Ps REVERSED DOUBLE PRIME QUOTATION MARK 〝 U+301e Pe DOUBLE PRIME QUOTATION MARK 〞 U+301f Pe LOW DOUBLE PRIME QUOTATION MARK 〟 U+3200 So PARENTHESIZED HANGUL KIYEOK ㈀ U+3201 So PARENTHESIZED HANGUL NIEUN ㈁ U+3202 So PARENTHESIZED HANGUL TIKEUT ㈂ U+3203 So PARENTHESIZED HANGUL RIEUL ㈃ U+3204 So PARENTHESIZED HANGUL MIEUM ㈄ U+3205 So PARENTHESIZED HANGUL PIEUP ㈅ U+3206 So PARENTHESIZED HANGUL SIOS ㈆ U+3207 So PARENTHESIZED HANGUL IEUNG ㈇ U+3208 So PARENTHESIZED HANGUL CIEUC ㈈ U+3209 So PARENTHESIZED HANGUL CHIEUCH ㈉ U+320a So PARENTHESIZED HANGUL KHIEUKH ㈊ U+320b So PARENTHESIZED HANGUL THIEUTH ㈋ U+320c So PARENTHESIZED HANGUL PHIEUPH ㈌ U+320d So PARENTHESIZED HANGUL HIEUH ㈍ U+320e So PARENTHESIZED HANGUL KIYEOK A ㈎ U+320f So PARENTHESIZED HANGUL NIEUN A ㈏ U+3210 So PARENTHESIZED HANGUL TIKEUT A ㈐ U+3211 So PARENTHESIZED HANGUL RIEUL A ㈑ U+3212 So PARENTHESIZED HANGUL MIEUM A ㈒ U+3213 So PARENTHESIZED HANGUL PIEUP A ㈓ U+3214 So PARENTHESIZED HANGUL SIOS A ㈔ U+3215 So PARENTHESIZED HANGUL IEUNG A ㈕ U+3216 So PARENTHESIZED HANGUL CIEUC A ㈖ U+3217 So PARENTHESIZED HANGUL CHIEUCH A ㈗ U+3218 So PARENTHESIZED HANGUL KHIEUKH A ㈘ U+3219 So PARENTHESIZED HANGUL THIEUTH A ㈙ U+321a So PARENTHESIZED HANGUL PHIEUPH A ㈚ U+321b So PARENTHESIZED HANGUL HIEUH A ㈛ U+321c So PARENTHESIZED HANGUL CIEUC U ㈜ U+321d So PARENTHESIZED KOREAN CHARACTER OJEON ㈝ U+321e So PARENTHESIZED KOREAN CHARACTER O HU ㈞ U+3220 No PARENTHESIZED IDEOGRAPH ONE ㈠ U+3221 No PARENTHESIZED IDEOGRAPH TWO ㈡ U+3222 No PARENTHESIZED IDEOGRAPH THREE ㈢ U+3223 No PARENTHESIZED IDEOGRAPH FOUR ㈣ U+3224 No PARENTHESIZED IDEOGRAPH FIVE ㈤ U+3225 No PARENTHESIZED IDEOGRAPH SIX ㈥ U+3226 No PARENTHESIZED IDEOGRAPH SEVEN ㈦ U+3227 No PARENTHESIZED IDEOGRAPH EIGHT ㈧ U+3228 No PARENTHESIZED IDEOGRAPH NINE ㈨ U+3229 No PARENTHESIZED IDEOGRAPH TEN ㈩ U+322a So PARENTHESIZED IDEOGRAPH MOON ㈪ U+322b So PARENTHESIZED IDEOGRAPH FIRE ㈫ U+322c So PARENTHESIZED IDEOGRAPH WATER ㈬ U+322d So PARENTHESIZED IDEOGRAPH WOOD ㈭ U+322e So PARENTHESIZED IDEOGRAPH METAL ㈮ U+322f So PARENTHESIZED IDEOGRAPH EARTH ㈯ U+3230 So PARENTHESIZED IDEOGRAPH SUN ㈰ U+3231 So PARENTHESIZED IDEOGRAPH STOCK ㈱ U+3232 So PARENTHESIZED IDEOGRAPH HAVE ㈲ U+3233 So PARENTHESIZED IDEOGRAPH SOCIETY ㈳ U+3234 So PARENTHESIZED IDEOGRAPH NAME ㈴ U+3235 So PARENTHESIZED IDEOGRAPH SPECIAL ㈵ U+3236 So PARENTHESIZED IDEOGRAPH FINANCIAL ㈶ U+3237 So PARENTHESIZED IDEOGRAPH CONGRATULATION ㈷ U+3238 So PARENTHESIZED IDEOGRAPH LABOR ㈸ U+3239 So PARENTHESIZED IDEOGRAPH REPRESENT ㈹ U+323a So PARENTHESIZED IDEOGRAPH CALL ㈺ U+323b So PARENTHESIZED IDEOGRAPH STUDY ㈻ U+323c So PARENTHESIZED IDEOGRAPH SUPERVISE ㈼ U+323d So PARENTHESIZED IDEOGRAPH ENTERPRISE ㈽ U+323e So PARENTHESIZED IDEOGRAPH RESOURCE ㈾ U+323f So PARENTHESIZED IDEOGRAPH ALLIANCE ㈿ U+3240 So PARENTHESIZED IDEOGRAPH FESTIVAL ㉀ U+3241 So PARENTHESIZED IDEOGRAPH REST ㉁ U+3242 So PARENTHESIZED IDEOGRAPH SELF ㉂ U+3243 So PARENTHESIZED IDEOGRAPH REACH ㉃ U+fd3e Ps ORNATE LEFT PARENTHESIS ﴾ U+fd3f Pe ORNATE RIGHT PARENTHESIS ﴿ U+fe17 Ps PRESENTATION FORM FOR VERTICAL LEFT WHITE LENTICULAR BRACKET ︗ U+fe18 Pe PRESENTATION FORM FOR VERTICAL RIGHT WHITE LENTICULAR BRAKCET ︘ U+fe35 Ps PRESENTATION FORM FOR VERTICAL LEFT PARENTHESIS ︵ U+fe36 Pe PRESENTATION FORM FOR VERTICAL RIGHT PARENTHESIS ︶ U+fe37 Ps PRESENTATION FORM FOR VERTICAL LEFT CURLY BRACKET ︷ U+fe38 Pe PRESENTATION FORM FOR VERTICAL RIGHT CURLY BRACKET ︸ U+fe39 Ps PRESENTATION FORM FOR VERTICAL LEFT TORTOISE SHELL BRACKET ︹ U+fe3a Pe PRESENTATION FORM FOR VERTICAL RIGHT TORTOISE SHELL BRACKET ︺ U+fe3b Ps PRESENTATION FORM FOR VERTICAL LEFT BLACK LENTICULAR BRACKET ︻ U+fe3c Pe PRESENTATION FORM FOR VERTICAL RIGHT BLACK LENTICULAR BRACKET ︼ U+fe3d Ps PRESENTATION FORM FOR VERTICAL LEFT DOUBLE ANGLE BRACKET ︽ U+fe3e Pe PRESENTATION FORM FOR VERTICAL RIGHT DOUBLE ANGLE BRACKET ︾ U+fe3f Ps PRESENTATION FORM FOR VERTICAL LEFT ANGLE BRACKET ︿ U+fe40 Pe PRESENTATION FORM FOR VERTICAL RIGHT ANGLE BRACKET ﹀ U+fe41 Ps PRESENTATION FORM FOR VERTICAL LEFT CORNER BRACKET ﹁ U+fe42 Pe PRESENTATION FORM FOR VERTICAL RIGHT CORNER BRACKET ﹂ U+fe43 Ps PRESENTATION FORM FOR VERTICAL LEFT WHITE CORNER BRACKET ﹃ U+fe44 Pe PRESENTATION FORM FOR VERTICAL RIGHT WHITE CORNER BRACKET ﹄ U+fe47 Ps PRESENTATION FORM FOR VERTICAL LEFT SQUARE BRACKET ﹇ U+fe48 Pe PRESENTATION FORM FOR VERTICAL RIGHT SQUARE BRACKET ﹈ U+fe59 Ps SMALL LEFT PARENTHESIS ﹙ U+fe5a Pe SMALL RIGHT PARENTHESIS ﹚ U+fe5b Ps SMALL LEFT CURLY BRACKET ﹛ U+fe5c Pe SMALL RIGHT CURLY BRACKET ﹜ U+fe5d Ps SMALL LEFT TORTOISE SHELL BRACKET ﹝ U+fe5e Pe SMALL RIGHT TORTOISE SHELL BRACKET ﹞ U+ff08 Ps FULLWIDTH LEFT PARENTHESIS ( U+ff09 Pe FULLWIDTH RIGHT PARENTHESIS ) U+ff3b Ps FULLWIDTH LEFT SQUARE BRACKET [ U+ff3d Pe FULLWIDTH RIGHT SQUARE BRACKET ] U+ff5b Ps FULLWIDTH LEFT CURLY BRACKET { U+ff5d Pe FULLWIDTH RIGHT CURLY BRACKET } U+ff5f Ps FULLWIDTH LEFT WHITE PARENTHESIS ⦅ U+ff60 Pe FULLWIDTH RIGHT WHITE PARENTHESIS ⦆ U+ff62 Ps HALFWIDTH LEFT CORNER BRACKET 「 U+ff63 Pe HALFWIDTH RIGHT CORNER BRACKET 」
最近的Unicode版本添加了一个属性Bidi_Paired_Bracket,它给出了Unicode认为是这个问题的答案。 这与镜像的不同。 Unicode 8.0中有60个支架对。 下表将每个映射到其配对。 第一列给出了一个代码点; 第二个是它引入的Unicode版本; 第三个显示映射,最后一列给出按字符名称的映射。 另外,为了查看Unicode字符数据库,Perl5与Unicode :: UCD模块打包在一起,其中包含许多用于检查事物的函数,包括Perl v5.22中的新函数,这些函数将输出给定代码点的所有属性的值。 CPAN上的Unicode :: Tussle提供了类似的function和其他function
0028 1.1 '(' => ')'; LEFT PARENTHESIS => RIGHT PARENTHESIS 0029 1.1 ')' => '('; RIGHT PARENTHESIS => LEFT PARENTHESIS 005B 1.1 '[' => ']'; LEFT SQUARE BRACKET => RIGHT SQUARE BRACKET 005D 1.1 ']' => '['; RIGHT SQUARE BRACKET => LEFT SQUARE BRACKET 007B 1.1 '{' => '}'; LEFT CURLY BRACKET => RIGHT CURLY BRACKET 007D 1.1 '}' => '{'; RIGHT CURLY BRACKET => LEFT CURLY BRACKET 0F3A 2.0 '༺' => '༻'; TIBETAN MARK GUG RTAGS GYON => TIBETAN MARK GUG RTAGS GYAS 0F3B 2.0 '༻' => '༺'; TIBETAN MARK GUG RTAGS GYAS => TIBETAN MARK GUG RTAGS GYON 0F3C 2.0 '༼' => '༽'; TIBETAN MARK ANG KHANG GYON => TIBETAN MARK ANG KHANG GYAS 0F3D 2.0 '༽' => '༼'; TIBETAN MARK ANG KHANG GYAS => TIBETAN MARK ANG KHANG GYON 169B 3.0 '᚛' => '᚜'; OGHAM FEATHER MARK => OGHAM REVERSED FEATHER MARK 169C 3.0 '᚜' => '᚛'; OGHAM REVERSED FEATHER MARK => OGHAM FEATHER MARK 2045 1.1 '⁅' => '⁆'; LEFT SQUARE BRACKET WITH QUILL => RIGHT SQUARE BRACKET WITH QUILL 2046 1.1 '⁆' => '⁅'; RIGHT SQUARE BRACKET WITH QUILL => LEFT SQUARE BRACKET WITH QUILL 207D 1.1 '⁽' => '⁾'; SUPERSCRIPT LEFT PARENTHESIS => SUPERSCRIPT RIGHT PARENTHESIS 207E 1.1 '⁾' => '⁽'; SUPERSCRIPT RIGHT PARENTHESIS => SUPERSCRIPT LEFT PARENTHESIS 208D 1.1 '₍' => '₎'; SUBSCRIPT LEFT PARENTHESIS => SUBSCRIPT RIGHT PARENTHESIS 208E 1.1 '₎' => '₍'; SUBSCRIPT RIGHT PARENTHESIS => SUBSCRIPT LEFT PARENTHESIS 2308 1.1 '⌈' => '⌉'; LEFT CEILING => RIGHT CEILING 2309 1.1 '⌉' => '⌈'; RIGHT CEILING => LEFT CEILING 230A 1.1 '⌊' => '⌋'; LEFT FLOOR => RIGHT FLOOR 230B 1.1 '⌋' => '⌊'; RIGHT FLOOR => LEFT FLOOR 2329 1.1 '〈' => '〉'; LEFT-POINTING ANGLE BRACKET => RIGHT-POINTING ANGLE BRACKET 232A 1.1 '〉' => '〈'; RIGHT-POINTING ANGLE BRACKET => LEFT-POINTING ANGLE BRACKET 2768 3.2 '❨' => '❩'; MEDIUM LEFT PARENTHESIS ORNAMENT => MEDIUM RIGHT PARENTHESIS ORNAMENT 2769 3.2 '❩' => '❨'; MEDIUM RIGHT PARENTHESIS ORNAMENT => MEDIUM LEFT PARENTHESIS ORNAMENT 276A 3.2 '❪' => '❫'; MEDIUM FLATTENED LEFT PARENTHESIS ORNAMENT => MEDIUM FLATTENED RIGHT PARENTHESIS ORNAMENT 276B 3.2 '❫' => '❪'; MEDIUM FLATTENED RIGHT PARENTHESIS ORNAMENT => MEDIUM FLATTENED LEFT PARENTHESIS ORNAMENT 276C 3.2 '❬' => '❭'; MEDIUM LEFT-POINTING ANGLE BRACKET ORNAMENT => MEDIUM RIGHT-POINTING ANGLE BRACKET ORNAMENT 276D 3.2 '❭' => '❬'; MEDIUM RIGHT-POINTING ANGLE BRACKET ORNAMENT => MEDIUM LEFT-POINTING ANGLE BRACKET ORNAMENT 276E 3.2 '❮' => '❯'; HEAVY LEFT-POINTING ANGLE QUOTATION MARK ORNAMENT => HEAVY RIGHT-POINTING ANGLE QUOTATION MARK ORNAMENT 276F 3.2 '❯' => '❮'; HEAVY RIGHT-POINTING ANGLE QUOTATION MARK ORNAMENT => HEAVY LEFT-POINTING ANGLE QUOTATION MARK ORNAMENT 2770 3.2 '❰' => '❱'; HEAVY LEFT-POINTING ANGLE BRACKET ORNAMENT => HEAVY RIGHT-POINTING ANGLE BRACKET ORNAMENT 2771 3.2 '❱' => '❰'; HEAVY RIGHT-POINTING ANGLE BRACKET ORNAMENT => HEAVY LEFT-POINTING ANGLE BRACKET ORNAMENT 2772 3.2 '❲' => '❳'; LIGHT LEFT TORTOISE SHELL BRACKET ORNAMENT => LIGHT RIGHT TORTOISE SHELL BRACKET ORNAMENT 2773 3.2 '❳' => '❲'; LIGHT RIGHT TORTOISE SHELL BRACKET ORNAMENT => LIGHT LEFT TORTOISE SHELL BRACKET ORNAMENT 2774 3.2 '❴' => '❵'; MEDIUM LEFT CURLY BRACKET ORNAMENT => MEDIUM RIGHT CURLY BRACKET ORNAMENT 2775 3.2 '❵' => '❴'; MEDIUM RIGHT CURLY BRACKET ORNAMENT => MEDIUM LEFT CURLY BRACKET ORNAMENT 27C5 4.1 '⟅' => '⟆'; LEFT S-SHAPED BAG DELIMITER => RIGHT S-SHAPED BAG DELIMITER 27C6 4.1 '⟆' => '⟅'; RIGHT S-SHAPED BAG DELIMITER => LEFT S-SHAPED BAG DELIMITER 27E6 3.2 '⟦' => '⟧'; MATHEMATICAL LEFT WHITE SQUARE BRACKET => MATHEMATICAL RIGHT WHITE SQUARE BRACKET 27E7 3.2 '⟧' => '⟦'; MATHEMATICAL RIGHT WHITE SQUARE BRACKET => MATHEMATICAL LEFT WHITE SQUARE BRACKET 27E8 3.2 '⟨' => '⟩'; MATHEMATICAL LEFT ANGLE BRACKET => MATHEMATICAL RIGHT ANGLE BRACKET 27E9 3.2 '⟩' => '⟨'; MATHEMATICAL RIGHT ANGLE BRACKET => MATHEMATICAL LEFT ANGLE BRACKET 27EA 3.2 '⟪' => '⟫'; MATHEMATICAL LEFT DOUBLE ANGLE BRACKET => MATHEMATICAL RIGHT DOUBLE ANGLE BRACKET 27EB 3.2 '⟫' => '⟪'; MATHEMATICAL RIGHT DOUBLE ANGLE BRACKET => MATHEMATICAL LEFT DOUBLE ANGLE BRACKET 27EC 5.1 '⟬' => '⟭'; MATHEMATICAL LEFT WHITE TORTOISE SHELL BRACKET => MATHEMATICAL RIGHT WHITE TORTOISE SHELL BRACKET 27ED 5.1 '⟭' => '⟬'; MATHEMATICAL RIGHT WHITE TORTOISE SHELL BRACKET => MATHEMATICAL LEFT WHITE TORTOISE SHELL BRACKET 27EE 5.1 '⟮' => '⟯'; MATHEMATICAL LEFT FLATTENED PARENTHESIS => MATHEMATICAL RIGHT FLATTENED PARENTHESIS 27EF 5.1 '⟯' => '⟮'; MATHEMATICAL RIGHT FLATTENED PARENTHESIS => MATHEMATICAL LEFT FLATTENED PARENTHESIS 2983 3.2 '⦃' => '⦄'; LEFT WHITE CURLY BRACKET => RIGHT WHITE CURLY BRACKET 2984 3.2 '⦄' => '⦃'; RIGHT WHITE CURLY BRACKET => LEFT WHITE CURLY BRACKET 2985 3.2 '⦅' => '⦆'; LEFT WHITE PARENTHESIS => RIGHT WHITE PARENTHESIS 2986 3.2 '⦆' => '⦅'; RIGHT WHITE PARENTHESIS => LEFT WHITE PARENTHESIS 2987 3.2 '⦇' => '⦈'; Z NOTATION LEFT IMAGE BRACKET => Z NOTATION RIGHT IMAGE BRACKET 2988 3.2 '⦈' => '⦇'; Z NOTATION RIGHT IMAGE BRACKET => Z NOTATION LEFT IMAGE BRACKET 2989 3.2 '⦉' => '⦊'; Z NOTATION LEFT BINDING BRACKET => Z NOTATION RIGHT BINDING BRACKET 298A 3.2 '⦊' => '⦉'; Z NOTATION RIGHT BINDING BRACKET => Z NOTATION LEFT BINDING BRACKET 298B 3.2 '⦋' => '⦌'; LEFT SQUARE BRACKET WITH UNDERBAR => RIGHT SQUARE BRACKET WITH UNDERBAR 298C 3.2 '⦌' => '⦋'; RIGHT SQUARE BRACKET WITH UNDERBAR => LEFT SQUARE BRACKET WITH UNDERBAR 298D 3.2 '⦍' => '⦐'; LEFT SQUARE BRACKET WITH TICK IN TOP CORNER => RIGHT SQUARE BRACKET WITH TICK IN TOP CORNER 298E 3.2 '⦎' => '⦏'; RIGHT SQUARE BRACKET WITH TICK IN BOTTOM CORNER => LEFT SQUARE BRACKET WITH TICK IN BOTTOM CORNER 298F 3.2 '⦏' => '⦎'; LEFT SQUARE BRACKET WITH TICK IN BOTTOM CORNER => RIGHT SQUARE BRACKET WITH TICK IN BOTTOM CORNER 2990 3.2 '⦐' => '⦍'; RIGHT SQUARE BRACKET WITH TICK IN TOP CORNER => LEFT SQUARE BRACKET WITH TICK IN TOP CORNER 2991 3.2 '⦑' => '⦒'; LEFT ANGLE BRACKET WITH DOT => RIGHT ANGLE BRACKET WITH DOT 2992 3.2 '⦒' => '⦑'; RIGHT ANGLE BRACKET WITH DOT => LEFT ANGLE BRACKET WITH DOT 2993 3.2 '⦓' => '⦔'; LEFT ARC LESS-THAN BRACKET => RIGHT ARC GREATER-THAN BRACKET 2994 3.2 '⦔' => '⦓'; RIGHT ARC GREATER-THAN BRACKET => LEFT ARC LESS-THAN BRACKET 2995 3.2 '⦕' => '⦖'; DOUBLE LEFT ARC GREATER-THAN BRACKET => DOUBLE RIGHT ARC LESS-THAN BRACKET 2996 3.2 '⦖' => '⦕'; DOUBLE RIGHT ARC LESS-THAN BRACKET => DOUBLE LEFT ARC GREATER-THAN BRACKET 2997 3.2 '⦗' => '⦘'; LEFT BLACK TORTOISE SHELL BRACKET => RIGHT BLACK TORTOISE SHELL BRACKET 2998 3.2 '⦘' => '⦗'; RIGHT BLACK TORTOISE SHELL BRACKET => LEFT BLACK TORTOISE SHELL BRACKET 29D8 3.2 '⧘' => '⧙'; LEFT WIGGLY FENCE => RIGHT WIGGLY FENCE 29D9 3.2 '⧙' => '⧘'; RIGHT WIGGLY FENCE => LEFT WIGGLY FENCE 29DA 3.2 '⧚' => '⧛'; LEFT DOUBLE WIGGLY FENCE => RIGHT DOUBLE WIGGLY FENCE 29DB 3.2 '⧛' => '⧚'; RIGHT DOUBLE WIGGLY FENCE => LEFT DOUBLE WIGGLY FENCE 29FC 3.2 '⧼' => '⧽'; LEFT-POINTING CURVED ANGLE BRACKET => RIGHT-POINTING CURVED ANGLE BRACKET 29FD 3.2 '⧽' => '⧼'; RIGHT-POINTING CURVED ANGLE BRACKET => LEFT-POINTING CURVED ANGLE BRACKET 2E22 5.1 '⸢' => '⸣'; TOP LEFT HALF BRACKET => TOP RIGHT HALF BRACKET 2E23 5.1 '⸣' => '⸢'; TOP RIGHT HALF BRACKET => TOP LEFT HALF BRACKET 2E24 5.1 '⸤' => '⸥'; BOTTOM LEFT HALF BRACKET => BOTTOM RIGHT HALF BRACKET 2E25 5.1 '⸥' => '⸤'; BOTTOM RIGHT HALF BRACKET => BOTTOM LEFT HALF BRACKET 2E26 5.1 '⸦' => '⸧'; LEFT SIDEWAYS U BRACKET => RIGHT SIDEWAYS U BRACKET 2E27 5.1 '⸧' => '⸦'; RIGHT SIDEWAYS U BRACKET => LEFT SIDEWAYS U BRACKET 2E28 5.1 '⸨' => '⸩'; LEFT DOUBLE PARENTHESIS => RIGHT DOUBLE PARENTHESIS 2E29 5.1 '⸩' => '⸨'; RIGHT DOUBLE PARENTHESIS => LEFT DOUBLE PARENTHESIS 3008 1.1 '〈' => '〉'; LEFT ANGLE BRACKET => RIGHT ANGLE BRACKET 3009 1.1 '〉' => '〈'; RIGHT ANGLE BRACKET => LEFT ANGLE BRACKET 300A 1.1 '《' => '》'; LEFT DOUBLE ANGLE BRACKET => RIGHT DOUBLE ANGLE BRACKET 300B 1.1 '》' => '《'; RIGHT DOUBLE ANGLE BRACKET => LEFT DOUBLE ANGLE BRACKET 300C 1.1 '「' => '」'; LEFT CORNER BRACKET => RIGHT CORNER BRACKET 300D 1.1 '」' => '「'; RIGHT CORNER BRACKET => LEFT CORNER BRACKET 300E 1.1 '『' => '』'; LEFT WHITE CORNER BRACKET => RIGHT WHITE CORNER BRACKET 300F 1.1 '』' => '『'; RIGHT WHITE CORNER BRACKET => LEFT WHITE CORNER BRACKET 3010 1.1 '【' => '】'; LEFT BLACK LENTICULAR BRACKET => RIGHT BLACK LENTICULAR BRACKET 3011 1.1 '】' => '【'; RIGHT BLACK LENTICULAR BRACKET => LEFT BLACK LENTICULAR BRACKET 3014 1.1 '〔' => '〕'; LEFT TORTOISE SHELL BRACKET => RIGHT TORTOISE SHELL BRACKET 3015 1.1 '〕' => '〔'; RIGHT TORTOISE SHELL BRACKET => LEFT TORTOISE SHELL BRACKET 3016 1.1 '〖' => '〗'; LEFT WHITE LENTICULAR BRACKET => RIGHT WHITE LENTICULAR BRACKET 3017 1.1 '〗' => '〖'; RIGHT WHITE LENTICULAR BRACKET => LEFT WHITE LENTICULAR BRACKET 3018 1.1 '〘' => '〙'; LEFT WHITE TORTOISE SHELL BRACKET => RIGHT WHITE TORTOISE SHELL BRACKET 3019 1.1 '〙' => '〘'; RIGHT WHITE TORTOISE SHELL BRACKET => LEFT WHITE TORTOISE SHELL BRACKET 301A 1.1 '〚' => '〛'; LEFT WHITE SQUARE BRACKET => RIGHT WHITE SQUARE BRACKET 301B 1.1 '〛' => '〚'; RIGHT WHITE SQUARE BRACKET => LEFT WHITE SQUARE BRACKET FE59 1.1 '﹙' => '﹚'; SMALL LEFT PARENTHESIS => SMALL RIGHT PARENTHESIS FE5A 1.1 '﹚' => '﹙'; SMALL RIGHT PARENTHESIS => SMALL LEFT PARENTHESIS FE5B 1.1 '﹛' => '﹜'; SMALL LEFT CURLY BRACKET => SMALL RIGHT CURLY BRACKET FE5C 1.1 '﹜' => '﹛'; SMALL RIGHT CURLY BRACKET => SMALL LEFT CURLY BRACKET FE5D 1.1 '﹝' => '﹞'; SMALL LEFT TORTOISE SHELL BRACKET => SMALL RIGHT TORTOISE SHELL BRACKET FE5E 1.1 '﹞' => '﹝'; SMALL RIGHT TORTOISE SHELL BRACKET => SMALL LEFT TORTOISE SHELL BRACKET FF08 1.1 '(' => ')'; FULLWIDTH LEFT PARENTHESIS => FULLWIDTH RIGHT PARENTHESIS FF09 1.1 ')' => '('; FULLWIDTH RIGHT PARENTHESIS => FULLWIDTH LEFT PARENTHESIS FF3B 1.1 '[' => ']'; FULLWIDTH LEFT SQUARE BRACKET => FULLWIDTH RIGHT SQUARE BRACKET FF3D 1.1 ']' => '['; FULLWIDTH RIGHT SQUARE BRACKET => FULLWIDTH LEFT SQUARE BRACKET FF5B 1.1 '{' => '}'; FULLWIDTH LEFT CURLY BRACKET => FULLWIDTH RIGHT CURLY BRACKET FF5D 1.1 '}' => '{'; FULLWIDTH RIGHT CURLY BRACKET => FULLWIDTH LEFT CURLY BRACKET FF5F 3.2 '⦅' => '⦆'; FULLWIDTH LEFT WHITE PARENTHESIS => FULLWIDTH RIGHT WHITE PARENTHESIS FF60 3.2 '⦆' => '⦅'; FULLWIDTH RIGHT WHITE PARENTHESIS => FULLWIDTH LEFT WHITE PARENTHESIS FF62 1.1 '「' => '」'; HALFWIDTH LEFT CORNER BRACKET => HALFWIDTH RIGHT CORNER BRACKET FF63 1.1 '」' => '「'; HALFWIDTH RIGHT CORNER BRACKET => HALFWIDTH LEFT CORNER BRACKET
If you want to pick up characters like <
and >
that are not formally considered grouping symbols you could take a look at http://www.unicode.org/Public/UNIDATA/BidiMirroring.txt as suggested by @roeland here . That file lists all pairs of characters which should be mirror images of each other.
Here's the full list:
( ) # { LEFT, RIGHT } PARENTHESIS < > # { LESS-THAN, GREATER-THAN } SIGN [ ] # { LEFT, RIGHT } SQUARE BRACKET { } # { LEFT, RIGHT } CURLY BRACKET « » # { LEFT-POINTING, RIGHT-POINTING } DOUBLE ANGLE QUOTATION MARK ༺ ༻ # TIBETAN MARK GUG RTAGS { GYON, GYAS } ༼ ༽ # TIBETAN MARK ANG KHANG { GYON, GYAS } ᚛ ᚜ # OGHAM { , REVERSED } FEATHER MARK ‹ › # SINGLE { LEFT-POINTING, RIGHT-POINTING } ANGLE QUOTATION MARK ⁅ ⁆ # { LEFT, RIGHT } SQUARE BRACKET WITH QUILL ⁽ ⁾ # SUPERSCRIPT { LEFT, RIGHT } PARENTHESIS ₍ ₎ # SUBSCRIPT { LEFT, RIGHT } PARENTHESIS ∈ ∋ # { ELEMENT OF, CONTAINS AS MEMBER } ∉ ∌ # { NOT AN ELEMENT OF, DOES NOT CONTAIN AS MEMBER } ∊ ∍ # SMALL { ELEMENT OF, CONTAINS AS MEMBER } ∼ ∽ # { TILDE OPERATOR, REVERSED TILDE } ≒ ≓ # { APPROXIMATELY EQUAL TO OR THE IMAGE OF, IMAGE OF OR APPROXIMATELY EQUAL TO } ≔ ≕ # { COLON EQUALS, EQUALS COLON } ≤ ≥ # { LESS-THAN, GREATER-THAN } OR EQUAL TO ≦ ≧ # { LESS-THAN, GREATER-THAN } OVER EQUAL TO ≪ ≫ # MUCH { LESS-THAN, GREATER-THAN } ≶ ≷ # { LESS-THAN OR GREATER-THAN, GREATER-THAN OR LESS-THAN } ≺ ≻ # { PRECEDES, SUCCEEDS } ≼ ≽ # { PRECEDES, SUCCEEDS } OR EQUAL TO ⊂ ⊃ # { SUBSET, SUPERSET } OF ⊆ ⊇ # { SUBSET, SUPERSET } OF OR EQUAL TO ⊏ ⊐ # SQUARE { IMAGE, ORIGINAL } OF ⊑ ⊒ # SQUARE { IMAGE, ORIGINAL } OF OR EQUAL TO ⊢ ⊣ # { RIGHT, LEFT } TACK ⊰ ⊱ # { PRECEDES, SUCCEEDS } UNDER RELATION ⊲ ⊳ # { NORMAL SUBGROUP OF, CONTAINS AS NORMAL SUBGROUP } ⊴ ⊵ # { NORMAL SUBGROUP OF, CONTAINS AS NORMAL SUBGROUP } OR EQUAL TO ⊶ ⊷ # { ORIGINAL, IMAGE } OF ⋉ ⋊ # { LEFT, RIGHT } NORMAL FACTOR SEMIDIRECT PRODUCT ⋋ ⋌ # { LEFT, RIGHT } SEMIDIRECT PRODUCT ≃ ⋍ # { ASYMPTOTICALLY EQUAL TO, REVERSED TILDE EQUALS } ⋐ ⋑ # DOUBLE { SUBSET, SUPERSET } ⋖ ⋗ # { LESS-THAN, GREATER-THAN } WITH DOT ⋘ ⋙ # VERY MUCH { LESS-THAN, GREATER-THAN } ⋚ ⋛ # { LESS-THAN EQUAL TO OR GREATER-THAN, GREATER-THAN EQUAL TO OR LESS-THAN } ⋜ ⋝ # EQUAL TO OR { LESS-THAN, GREATER-THAN } ⋞ ⋟ # EQUAL TO OR { PRECEDES, SUCCEEDS } ⋰ ⋱ # { UP, DOWN } RIGHT DIAGONAL ELLIPSIS ⋲ ⋺ # { ELEMENT OF, CONTAINS } WITH LONG HORIZONTAL STROKE ⋳ ⋻ # { ELEMENT OF, CONTAINS } WITH VERTICAL BAR AT END OF HORIZONTAL STROKE ⋴ ⋼ # SMALL { ELEMENT OF, CONTAINS } WITH VERTICAL BAR AT END OF HORIZONTAL STROKE ⋶ ⋽ # { ELEMENT OF, CONTAINS } WITH OVERBAR ⋷ ⋾ # SMALL { ELEMENT OF, CONTAINS } WITH OVERBAR ⌈ ⌉ # { LEFT, RIGHT } CEILING ⌊ ⌋ # { LEFT, RIGHT } FLOOR 〈 〉 # { LEFT-POINTING, RIGHT-POINTING } ANGLE BRACKET ❨ ❩ # MEDIUM { LEFT, RIGHT } PARENTHESIS ORNAMENT ❪ ❫ # MEDIUM FLATTENED { LEFT, RIGHT } PARENTHESIS ORNAMENT ❬ ❭ # MEDIUM { LEFT-POINTING, RIGHT-POINTING } ANGLE BRACKET ORNAMENT ❮ ❯ # HEAVY { LEFT-POINTING, RIGHT-POINTING } ANGLE QUOTATION MARK ORNAMENT ❰ ❱ # HEAVY { LEFT-POINTING, RIGHT-POINTING } ANGLE BRACKET ORNAMENT ❲ ❳ # LIGHT { LEFT, RIGHT } TORTOISE SHELL BRACKET ORNAMENT ❴ ❵ # MEDIUM { LEFT, RIGHT } CURLY BRACKET ORNAMENT ⟃ ⟄ # OPEN { SUBSET, SUPERSET } ⟅ ⟆ # { LEFT, RIGHT } S-SHAPED BAG DELIMITER ⟈ ⟉ # { REVERSE SOLIDUS PRECEDING SUBSET, SUPERSET PRECEDING SOLIDUS } ⟋ ⟍ # MATHEMATICAL { RISING, FALLING } DIAGONAL ⟕ ⟖ # { LEFT, RIGHT } OUTER JOIN ⟝ ⟞ # LONG { RIGHT, LEFT } TACK ⟢ ⟣ # WHITE CONCAVE-SIDED DIAMOND WITH { LEFTWARDS, RIGHTWARDS } TICK ⟤ ⟥ # WHITE SQUARE WITH { LEFTWARDS, RIGHTWARDS } TICK ⟦ ⟧ # MATHEMATICAL { LEFT, RIGHT } WHITE SQUARE BRACKET ⟨ ⟩ # MATHEMATICAL { LEFT, RIGHT } ANGLE BRACKET ⟪ ⟫ # MATHEMATICAL { LEFT, RIGHT } DOUBLE ANGLE BRACKET ⟬ ⟭ # MATHEMATICAL { LEFT, RIGHT } WHITE TORTOISE SHELL BRACKET ⟮ ⟯ # MATHEMATICAL { LEFT, RIGHT } FLATTENED PARENTHESIS ⦃ ⦄ # { LEFT, RIGHT } WHITE CURLY BRACKET ⦅ ⦆ # { LEFT, RIGHT } WHITE PARENTHESIS ⦇ ⦈ # Z NOTATION { LEFT, RIGHT } IMAGE BRACKET ⦉ ⦊ # Z NOTATION { LEFT, RIGHT } BINDING BRACKET ⦋ ⦌ # { LEFT, RIGHT } SQUARE BRACKET WITH UNDERBAR ⦎ ⦏ # { RIGHT, LEFT } SQUARE BRACKET WITH TICK IN BOTTOM CORNER ⦍ ⦐ # { LEFT, RIGHT } SQUARE BRACKET WITH TICK IN TOP CORNER ⦑ ⦒ # { LEFT, RIGHT } ANGLE BRACKET WITH DOT ⦓ ⦔ # { LEFT ARC LESS-THAN, RIGHT ARC GREATER-THAN } BRACKET ⦕ ⦖ # DOUBLE { LEFT ARC GREATER-THAN, RIGHT ARC LESS-THAN } BRACKET ⦗ ⦘ # { LEFT, RIGHT } BLACK TORTOISE SHELL BRACKET ⊘ ⦸ # CIRCLED { DIVISION SLASH, REVERSE SOLIDUS } ⧀ ⧁ # CIRCLED { LESS-THAN, GREATER-THAN } ⧄ ⧅ # SQUARED { RISING, FALLING } DIAGONAL SLASH ⧏ ⧐ # { LEFT TRIANGLE BESIDE VERTICAL BAR, VERTICAL BAR BESIDE RIGHT TRIANGLE } ⧑ ⧒ # BOWTIE WITH { LEFT, RIGHT } HALF BLACK ⧔ ⧕ # TIMES WITH { LEFT, RIGHT } HALF BLACK ⧘ ⧙ # { LEFT, RIGHT } WIGGLY FENCE ⧚ ⧛ # { LEFT, RIGHT } DOUBLE WIGGLY FENCE ∕ ⧵ # { DIVISION SLASH, REVERSE SOLIDUS OPERATOR } ⧸ ⧹ # BIG { , REVERSE } SOLIDUS ⧼ ⧽ # { LEFT-POINTING, RIGHT-POINTING } CURVED ANGLE BRACKET ⨫ ⨬ # MINUS SIGN WITH { FALLING, RISING } DOTS ⨭ ⨮ # PLUS SIGN IN { LEFT, RIGHT } HALF CIRCLE ⨴ ⨵ # MULTIPLICATION SIGN IN { LEFT, RIGHT } HALF CIRCLE ⨼ ⨽ # { , RIGHTHAND } INTERIOR PRODUCT ⩤ ⩥ # Z NOTATION { DOMAIN, RANGE } ANTIRESTRICTION ⩹ ⩺ # { LESS-THAN, GREATER-THAN } WITH CIRCLE INSIDE ⩽ ⩾ # { LESS-THAN, GREATER-THAN } OR SLANTED EQUAL TO ⩿ ⪀ # { LESS-THAN, GREATER-THAN } OR SLANTED EQUAL TO WITH DOT INSIDE ⪁ ⪂ # { LESS-THAN, GREATER-THAN } OR SLANTED EQUAL TO WITH DOT ABOVE ⪃ ⪄ # { LESS-THAN OR SLANTED EQUAL TO WITH DOT ABOVE RIGHT, GREATER-THAN OR SLANTED EQUAL TO WITH DOT ABOVE LEFT } ⪋ ⪌ # { LESS-THAN ABOVE DOUBLE-LINE EQUAL ABOVE GREATER-THAN, GREATER-THAN ABOVE DOUBLE-LINE EQUAL ABOVE LESS-THAN } ⪑ ⪒ # { LESS-THAN ABOVE GREATER-THAN, GREATER-THAN ABOVE LESS-THAN } ABOVE DOUBLE-LINE EQUAL ⪓ ⪔ # { LESS-THAN ABOVE SLANTED EQUAL ABOVE GREATER-THAN, GREATER-THAN ABOVE SLANTED EQUAL ABOVE LESS-THAN } ABOVE SLANTED EQUAL ⪕ ⪖ # SLANTED EQUAL TO OR { LESS-THAN, GREATER-THAN } ⪗ ⪘ # SLANTED EQUAL TO OR { LESS-THAN, GREATER-THAN } WITH DOT INSIDE ⪙ ⪚ # DOUBLE-LINE EQUAL TO OR { LESS-THAN, GREATER-THAN } ⪛ ⪜ # DOUBLE-LINE SLANTED EQUAL TO OR { LESS-THAN, GREATER-THAN } ⪡ ⪢ # DOUBLE NESTED { LESS-THAN, GREATER-THAN } ⪦ ⪧ # { LESS-THAN, GREATER-THAN } CLOSED BY CURVE ⪨ ⪩ # { LESS-THAN, GREATER-THAN } CLOSED BY CURVE ABOVE SLANTED EQUAL ⪪ ⪫ # { SMALLER, LARGER } THAN ⪬ ⪭ # { SMALLER, LARGER } THAN OR EQUAL TO ⪯ ⪰ # { PRECEDES, SUCCEEDS } ABOVE SINGLE-LINE EQUALS SIGN ⪳ ⪴ # { PRECEDES, SUCCEEDS } ABOVE EQUALS SIGN ⪻ ⪼ # DOUBLE { PRECEDES, SUCCEEDS } ⪽ ⪾ # { SUBSET, SUPERSET } WITH DOT ⪿ ⫀ # { SUBSET, SUPERSET } WITH PLUS SIGN BELOW ⫁ ⫂ # { SUBSET, SUPERSET } WITH MULTIPLICATION SIGN BELOW ⫃ ⫄ # { SUBSET, SUPERSET } OF OR EQUAL TO WITH DOT ABOVE ⫅ ⫆ # { SUBSET, SUPERSET } OF ABOVE EQUALS SIGN ⫍ ⫎ # SQUARE { LEFT, RIGHT } OPEN BOX OPERATOR ⫏ ⫐ # CLOSED { SUBSET, SUPERSET } ⫑ ⫒ # CLOSED { SUBSET, SUPERSET } OR EQUAL TO ⫓ ⫔ # { SUBSET ABOVE SUPERSET, SUPERSET ABOVE SUBSET } ⫕ ⫖ # { SUBSET ABOVE SUBSET, SUPERSET ABOVE SUPERSET } ⊦ ⫞ # { ASSERTION, SHORT LEFT TACK } ⊩ ⫣ # { FORCES, DOUBLE VERTICAL BAR LEFT TURNSTILE } ⊨ ⫤ # { TRUE, VERTICAL BAR DOUBLE LEFT TURNSTILE } ⊫ ⫥ # DOUBLE VERTICAL BAR DOUBLE { RIGHT, LEFT } TURNSTILE ⫬ ⫭ # { , REVERSED } DOUBLE STROKE NOT SIGN ⫷ ⫸ # TRIPLE NESTED { LESS-THAN, GREATER-THAN } ⫹ ⫺ # DOUBLE-LINE SLANTED { LESS-THAN, GREATER-THAN } OR EQUAL TO ⸂ ⸃ # { LEFT, RIGHT } SUBSTITUTION BRACKET ⸄ ⸅ # { LEFT, RIGHT } DOTTED SUBSTITUTION BRACKET ⸉ ⸊ # { LEFT, RIGHT } TRANSPOSITION BRACKET ⸌ ⸍ # { LEFT, RIGHT } RAISED OMISSION BRACKET ⸜ ⸝ # { LEFT, RIGHT } LOW PARAPHRASE BRACKET ⸠ ⸡ # { LEFT, RIGHT } VERTICAL BAR WITH QUILL ⸢ ⸣ # TOP { LEFT, RIGHT } HALF BRACKET ⸤ ⸥ # BOTTOM { LEFT, RIGHT } HALF BRACKET ⸦ ⸧ # { LEFT, RIGHT } SIDEWAYS U BRACKET ⸨ ⸩ # { LEFT, RIGHT } DOUBLE PARENTHESIS 〈 〉 # { LEFT, RIGHT } ANGLE BRACKET 《 》 # { LEFT, RIGHT } DOUBLE ANGLE BRACKET 【 】 # { LEFT, RIGHT } BLACK LENTICULAR BRACKET 〔 〕 # { LEFT, RIGHT } TORTOISE SHELL BRACKET 〖 〗 # { LEFT, RIGHT } WHITE LENTICULAR BRACKET 〘 〙 # { LEFT, RIGHT } WHITE TORTOISE SHELL BRACKET 〚 〛 # { LEFT, RIGHT } WHITE SQUARE BRACKET ﹙ ﹚ # SMALL { LEFT, RIGHT } PARENTHESIS ﹛ ﹜ # SMALL { LEFT, RIGHT } CURLY BRACKET ﹝ ﹞ # SMALL { LEFT, RIGHT } TORTOISE SHELL BRACKET ﹤ ﹥ # SMALL { LESS-THAN, GREATER-THAN } SIGN ( ) # FULLWIDTH { LEFT, RIGHT } PARENTHESIS < > # FULLWIDTH { LESS-THAN, GREATER-THAN } SIGN [ ] # FULLWIDTH { LEFT, RIGHT } SQUARE BRACKET { } # FULLWIDTH { LEFT, RIGHT } CURLY BRACKET ⦅ ⦆ # FULLWIDTH { LEFT, RIGHT } WHITE PARENTHESIS
The idea of “bracket-like” characters might be more or less be identified with the General Category (gc) property values of Ps (Punctuation, open) and Pe (Punctuation, close). This category contains a few dozens of paired punctuation marks, mostly excluding quotation marks (categories Pi and Pf).
In programming, many languages have tools for testing for the General Category of a character, eg \p{Ps}
in Perl.
If you just need some lists, you could use the Unicode Character Categories information at fileformat.info.
Generally, the way to search for Unicode characters depends on what you are looking for and on your criteria. General Category is a good starting point in many cases.
What is a good way to search for unicode characters?
This – obviously – depends on what exactly you plan to do. I build the website http://write-math.com . During my bachelors thesis, I created a symbol classifier (which is now on this website under "classify") which gives users the possibility to draw a symbol and get the LaTeX / unicode result (currently only 369 symbols are supported). This is very nice if you want to typeset a document and search single, specific characters of which you know how they look like / how they are called but not how to write them with LaTeX (or whatever you use for typesetting):
It also has a symbol search feature. It's still in heavy development, but there are 1166 symbols in this database.
For your brackets:
- http://www.martin-thoma.de/write-math/search/?search=bracket
- http://www.martin-thoma.de/write-math/search/?search=parenthesis
unicode.xml
(from http://www.w3.org/2003/entities/2007doc/#source ) is also worth a try.