有什么区别" '"和" ' "

时间:2017-01-30 21:55:47

标签: ascii redcarpet

出于某种原因,在将'呈现为'时,Redcarpet降价会将呈现为。有两种类型的单引号吗?为什么Redcarpet会以不同的方式对待一个人。 (Ascii表似乎有一个,但在unicode下我假设有更多?)

搜索'有点困难,以及Chrome查找(命令+ f),Google搜索似乎将这两个字符视为同一个字符。

enter image description here

enter image description here

1 个答案:

答案 0 :(得分:2)

是的,有。这两个引号字符是:

hex(decimal) codepoint = 2019(8217) and character = ’
hex(decimal) codepoint = 27(39) and character = '

代码点(第一个数字是十六进制,第二个数字是代码点的十进制值)是不同的。

根据Unicode标准,第一个是:

2019;RIGHT SINGLE QUOTATION MARK;Pf;0;ON;;;;;N;SINGLE COMMA QUOTATION MARK;;;;

而第二个是

0027;APOSTROPHE;Po;0;ON;;;;;N;APOSTROPHE-QUOTE;;;;

也许RedCarpet应该使用正确的HTML实体转义为第一种类型的引用。 (This page表示应将其转义为’

当你说第二个引号时,你是对的:'是7位ASCII编码的一部分。

即使第一个引用’呈现为:'与第二个引语相比无法区分人物:',您可以使用操作系统的输入在Chrome或任何其他编辑器/浏览器上搜索它方法。这是因为输入一个字符是所谓的Input Method的工作,如果您知道它支持的输入方法,您可以在给定的操作系统中输入任何字符。例如,Mac上的

  • 在菜单栏上使用如下所示的U +键盘。
  • 在Chrome上按Cmd + F开始搜索。
  • 按住Alt键并输入您要查找的报价的unicode十六进制值(2719)。搜索框中显示的内容是'(事实上这就是我打印报价所做的!)

Linux和Microsoft Windows上提供了类似的工具。

enter image description here