正则表达式 - 完全匹配开始结束

时间:2015-05-01 06:52:34

标签: php regex preg-match

我的多行使用似乎存在小的冲突..这是上下文

test-test-3
test-1

我正在尝试将每行完全匹配,给它test字符串,然后返回-之后的内容:

/test-(.*)/i

这个会抓住第一个test-test-3,我想抓住第二行test-1

我正在尝试从线的开头到结尾(1场比赛)完全匹配我正在寻找的内容,使用^$无效,可能因为我正在使用多行(\ n),

我试过这个:/^test-(.*)$/i/^test-(.*)\n$/i哪些无效

1 个答案:

答案 0 :(得分:1)

如果你想匹配第二行,你需要在开头的正则表达式中加上一个文字\n,因为^也匹配第一行的开头。

$str = "test-test-3
test-1";
preg_match('/\ntest-(.*)$/mi', $str, $match);
var_dump($match);

DEMO