如何匹配新的perl线

时间:2013-01-18 13:38:58

标签: regex perl

我正在尝试匹配看起来像这样的行

  (white space)ERROR(some text)(new line)
  (some text)

我所尝试的是像这样的正则表达式并且无法正常工作

  if (/\sERROR(.*)(\n.*)/){
  }

2 个答案:

答案 0 :(得分:1)

使用/s修饰符:/\sERROR(.*)(\n.*)/s。并且要小心(.*)的贪婪。

答案 1 :(得分:1)

$_之前打印if

  1. 您确定您的字符串以空格开头吗?如果没有,则需要\s*而不是\s

  2. 嵌入式换行很少见,你确定你真的有吗?如果是,您需要在s之后使用/修饰符。

  3. 如果一切都失败了,请阅读the manual