【问题标题】:PHP Regex match value in between two words and replacePHP Regex 匹配两个单词之间的值并替换
【发布时间】:2017-02-21 18:39:51
【问题描述】:

大家好,我想用 php 实现的是在两个单词之间找到一个值(对于所有出现的情况)并将其替换为另一个字符串,然后删除该值周围的单词。 这是一个例子

$mysting = "[link]http://website.com[/link] bla bla bla bla [link]http://google.com[/link]";

我想要实现的是制作这个字符串:

$newString = "<a href='http://website.com'>http://website.com</a> bla bla bla bla <a href='http://google.com'>http://google.com</a>";

我该怎么做? 这就是我现在所拥有的

preg_match("/(?<=[link])(.*)(?=[/link])/", $formData ,$match);

提前致谢!!

【问题讨论】:

标签: php regex preg-replace preg-match preg-match-all


【解决方案1】:

使用preg_replace函数:

$mysting = "[link]http://website.com[/link] bla bla bla bla [link]http://google.com[/link]";
$new_str = preg_replace("/\[link\]([^\[]+)\[\/link\]/", "<a href='$1'>$1</a>", $mysting);

print_r($new_str);

输出(作为源代码):

<a href='http://website.com'>http://website.com</a> bla bla bla bla <a href='http://google.com'>http://google.com</a>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-04-07
    • 2014-05-19
    • 2019-03-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-06-10
    相关资源
    最近更新 更多