\ r和\ n之间的区别

时间:2010-08-10 16:23:12

标签: javascript regex

正则表达式中\r\n之间的区别是什么 有人可以用一个例子向我解释一下吗?

5 个答案:

答案 0 :(得分:29)

\r是“回车”(CR,ASCII字符13),\n是“换行”(LF,ASCII字符10)。在这些日子里,你在每一行的末尾都有两个ASCII字符告诉打印机要做什么 - CR会告诉打印机返回到纸张的左边缘,LF会前进到下一行。

操作系统对于行的结尾仍然有不同的约定 - 其中一些有\n\r,有些有\n,有些有\r\n

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

答案 1 :(得分:12)

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

  
      
  • \f匹配form-feed。
  •   
  • \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字符的字符。
  •   
  • \uhhhh将Unicode字符与四个字符匹配   十六进制代码hhhh
  •   

答案 2 :(得分:5)

\n是换行

\r是回车

例如,在Windows中,行结尾为\r\n。在绝大多数其他操作系统中,它们是\n

答案 3 :(得分:4)

\r\n是您前往打字机下一行的方式的数字表示。 \rcarriage return\nnewline(也称为换行符)。在打字机上,要转到新行的开头,您将将>托架返回到最左侧位置,然后纸张向上移动一行。

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

答案 4 :(得分:1)

\n - >换新行

\r - >回车