preg_match双引号或单引号

时间:2012-11-28 04:57:58

标签: php preg-match

使用单引号

preg_match("/Location:(.*?)\n/", 'Location: www.\n', $matches);
    var_dump($matches);

打印:

array (size=0)
  empty

使用双引号

preg_match("/Location:(.*?)\n/", "Location: www.\n", $matches);
var_dump($matches);

打印

array (size=2)
  0 => string 'Location: www.
' (length=15)
  1 => string ' www.' (length=5)

为什么?

3 个答案:

答案 0 :(得分:0)

这与preg_match无关。当您使用单引号时,您的字符串不会以换行符结尾;它以反斜杠结尾,然后是n。

答案 1 :(得分:0)

来自PHP manual

  

单引号

     

指定字符串的最简单方法是将其用单引号括起来(字符')。

     

要指定文字单引号,请使用反斜杠(\)对其进行转义。要指定文字反斜杠,请将其加倍(\\)。反斜杠的所有其他实例将被视为文字反斜杠:这意味着您可能习惯的其他转义序列(例如\r\n)将按字面输出指定而不是具有任何特殊含义。

答案 2 :(得分:-1)

看看这可以帮助你:

preg_match()

相关问题