Javascript 之间的差异\r和\n

Javascript 之间的差异\r和\n,javascript,regex,Javascript,Regex,正则表达式中的\r和\n之间有什么区别 有人能举例说明吗?通常\r表示回车符(ASCII0x0d),而\n是换行符(ASCII0x0a)。具有所有特殊字符的列表,此处引用以确保完整性: \f与表单提要匹配 \r与回车符匹配 \n与换行符匹配 \t匹配水平选项卡 \v匹配垂直选项卡 \0匹配NUL字符 [\b]匹配退格 \s匹配空白(缩写为[\f\n\r\t\v\u00A0\u2028\u2029]) \S匹配除空格(缩写为 [^\f\n\r\t\v\u00A0\u2028\u2029]) \w

正则表达式中的
\r
\n
之间有什么区别


有人能举例说明吗?

通常
\r
表示回车符(ASCII
0x0d
),而
\n
是换行符(ASCII
0x0a
)。具有所有特殊字符的列表,此处引用以确保完整性:

  • \f
    与表单提要匹配
  • \r
    与回车符匹配
  • \n
    与换行符匹配
  • \t
    匹配水平选项卡
  • \v
    匹配垂直选项卡
  • \0
    匹配
    NUL
    字符
  • [\b]
    匹配退格
  • \s
    匹配空白(缩写为
    [\f\n\r\t\v\u00A0\u2028\u2029]
  • \S
    匹配除空格(缩写为
    [^\f\n\r\t\v\u00A0\u2028\u2029]
  • \w
    匹配任何字母数字字符(单词字符),包括 下划线(缩写为
    [a-zA-Z0-9.]
  • \W
    匹配任何非单词字符(缩写为
    [^a-zA-Z0-9\]
  • \d
    匹配任何数字(缩写为
    [0-9]
  • \D
    匹配任何非数字(缩写为
    [^0-9]
  • \b
    匹配单词边界(单词和空格之间的位置)
  • \B
    匹配非单词边界(简称
    [^\B]
  • \cX
    与控制字符匹配。例如:
    \cm
    匹配
    control-M
  • \xhh
    将字符与十六进制代码的两个字符进行匹配
    hh
  • \uhhh
    将Unicode字符与 十六进制代码
    hhh

\n
是换行符

\r
是回车

例如,在windows中,行尾是
\r\n
。在绝大多数其他操作系统中,它们是
\n
\r
是“回车”(CR,ASCII字符13),
\n
是“换行符”(LF,ASCII字符10)。在过去,每行末尾都有两个ASCII字符来告诉打印机该做什么——CR会告诉打印机回到纸张的左边缘,LF会前进到下一行

对于行尾的外观,操作系统仍然有不同的约定——有些有
\n\r
,有些有
\n
,有些有
\r\n


在Javascript中,您主要处理
\n
——这就是字符串通常切换到下一行的方式。但是,根据您使用的字符串的不同,您可能还会遇到
\r
。你到底在做什么?

\r
\n
是你在打字机上前进到下一行的方式的数字表示<代码>\r是一个,而
\n
是一个(也称为换行符)。在打字机上,要转到新行的开头,您需要将滑架返回到最左边的位置,然后将纸张向上送入一行

Unix使用
\n
表示新行,OS9之前的Mac使用
\r
,Windows使用
\r\n
\n
-->表示新行


\r
-->对于回车

不完全正确。例如,OS 9有\r\n,IIRC。和一个Mac操作系统,以前只使用了
\r
,IIRC。想想一个旧的手动打字机。。。回车将当前“位置”移回行的开头。@Avinash,@nonnb正确-回车和换行是从纸张终端时代开始的术语;回车符将打印头移回第0列,换行使纸卷前进一行。
\0
不属于该列
\{number}
只是一个八进制转义序列。我不知道有哪个平台或协议将
\n\r
指定为新行函数;OS X之前的MAC OS上的本机行分隔符是
\r
单独使用的。@Alan如果您想让我们告诉您,请询问。:)@bzim:你是说你知道有一个系统使用
\n\r
LFCR
0x0A 0x0D
)作为行分隔符?说吧!此答案已添加到“转义序列”下的。