如何在PHP中使用正则表达式将纯文本列表转换为HTML列表?
Lorem ipsum.
- item 1
- item 2
- item 3
- item 4
Dolores amet.
到
Lorem ipsum.
<ul>
<li>item1</li>
<li>item2</li>
<li>item3</li>
<li>item4</li>
</ul>
Dolores amet.
-
正则表达式模式
'n's?-'s?(.*)
示例 https://regex101.com/r/zQ7xL6/1
-
获取匹配项。
要获得每个匹配项,请使用 preg_match_all():
preg_match_all($pattern, $your_text, $matches);
Array ( [0] => Array ( [0] => 'item 1' ) [1] => Array ( [0] => 'item 2' ) etc.. )
-
.HTML
在这里,您可以对比赛做任何您想做的事情。因此,让我们添加一些 HTML 标记。
$html_text = ''; foreach($matches as $match) { $item = $match[0]; //item 1 $html_text .= '<li>' . $item . '</li>'; } $html_text = '<ul>' . $html_text . '</ul>';
输出
<ul> <li>item1</li> <li>item2</li> <li>item3</li> <li>item4</li> </ul>
-
preg_replace方式
为了获得灵感,请看这里 一个在 PHP 中将文本列表转换为 html 的正则表达式希望我对您有所帮助。