以下preg_replace检查以*
开头的行,并在其周围放置html标记。这很有效,唯一的问题是,它只有在提供一条线时才有效,而不是有多条线。
我已尝试向其中添加\s
和m
,但没有任何内容可以让它发挥作用。如何才能实现这一目标?
$str = <<< EOF
*Portfolio
Our work includes...
*Company Profile
Acme was formed in
EOF;
$str = preg_replace('/^\*([^\*].*)$/', '<h1>$1</h1>', $str);
echo $str;
//Expected output
<h1>Portfolio</h1>
Our work includes...
<h1>Company Profile</h1>
Acme was formed in
//Current output either works if there's only one line.
答案 0 :(得分:1)