这是恶魔般的角色‐
;检查它我有3个ASCII值:
ASCII code 226 128 147
现在我想了解一下如何在我的正则表达式中使用这个角色。
答案 0 :(得分:1)
这些都不是ASCII值,因为ASCII范围是0到127,没有更高的值。 UTF-8中的代码点U + 2010 HYPHEN使用您在其中列出的三个字节值编写,如下所示:
$ perl -CS -e 'print "\x{2010}"' | perl -C0 -ne 'printf "%vd\n",$_'
226.128.144
您可以使用the uniprops script获取该代码点的名称和字符属性:
$ uniprops U+2010
U+2010 ‹‐› \N{ HYPHEN }:
\pP \p{Pd}
All Any Assigned InGeneralPunctuation Common Zyyy Dash Dash_Punctuation Pd P General_Punctuation Gr_Base Grapheme_Base Graph GrBase Hyphen Punct Pat_Syn Pattern_Syntax PatSyn Print Punctuation
Unicode Dash
属性的其他常见代码点包括the unichars script显示的内容:
$ unichars '\p{Dash}'
- 45 002D HYPHEN-MINUS
‐ 8208 2010 HYPHEN
‑ 8209 2011 NON-BREAKING HYPHEN
‒ 8210 2012 FIGURE DASH
– 8211 2013 EN DASH
— 8212 2014 EM DASH
― 8213 2015 HORIZONTAL BAR
⁓ 8275 2053 SWUNG DASH
⁻ 8315 207B SUPERSCRIPT MINUS
₋ 8331 208B SUBSCRIPT MINUS
− 8722 2212 MINUS SIGN
答案 1 :(得分:0)
它可能是Unicode。正确的答案是始终使用Unicode。你最终会 如果您尝试将Unicode字符串视为ASCII,则会遇到很多麻烦。