正则表达式无法匹配以hash开头的markdown标头

时间:2018-01-19 07:18:01

标签: php regex

以下任何人都可以告诉我我做错了什么。 我想将markdown标题#与下面一个空格匹配。

function fizz_buzz($markdown) {
    $markdown = trim($markdown);
    preg_match('/^#{1,6}\s(w+)/', $markdown, $matches, PREG_OFFSET_CAPTURE);
        print_r($matches);
}
echo fizz_buzz("# header");
echo fizz_buzz("### header");

它的输出为空数组,应该都匹配。

1 个答案:

答案 0 :(得分:2)

我认为您需要使用\w+代替w+来匹配任何字词

function fizz_buzz($markdown) {
    $markdown = trim($markdown);
    preg_match('/^#{1,6}\s(\w+)/', $markdown, $matches, PREG_OFFSET_CAPTURE);
    print_r($matches);
}
echo fizz_buzz("# header");
echo fizz_buzz("### header");

Output php