PHP preg_replace 将 **xyz** 转换为 xyz
为了好玩,我决定做一些类似于 Markdown 的东西。根据我过去使用正则表达式的一些小经验,我知道它们有多么强大,所以它们将是我所需要的。
所以,如果我有这个字符串:
Hello **bold** world
如何使用 preg_replace 将其转换为:
Hello <b>bold</b> world
我假设是这样的?
$input = "Hello **bold** world";
$output = preg_replace("/(\*\*).*?(\*\*/)", "<b></b>", $input);
I decided to, for fun, make something similar to markdown. With my small experiences with Regular Expressions in the past, I know how extremely powerful they are, so they will be what I need.
So, if I have this string:
Hello **bold** world
How can I use preg_replace to convert that to:
Hello <b>bold</b> world
I assume something like this?
$input = "Hello **bold** world";
$output = preg_replace("/(\*\*).*?(\*\*/)", "<b></b>", $input);
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
关闭:
Close:
我相信有一个用于渲染 Markdown 的 PHP 包。不要自行编写代码,而是尝试使用已编写和测试的现有代码集。
I believe there is a PHP package for rendering Markdown. Rather than rolling your own, try using an existing set of code that's been written and tested.
嗯,我想这可以工作
你找到所有序列
**something**
然后用粗体标签替换找到的整个序列并在其中($1
)第一个捕获的组(表达式中的括号)。Mmm I guess this could work
You find all sequences
**something**
and then you substitute the entire sequence found with the bold tag and inside it (the$1
) the first captured group (the brackets in the expression).