我有一个表达式[text][id],应该用链接替换<a href='id'>text</a>
解决方案是(id是整数)
$s = preg_replace("/\[([^\]]+)(\]*)\]\[([0-9]+)\]/","<a href='$3'>$1$2</a>",$string);
Run Code Online (Sandbox Code Playgroud)
但是,在某些情况下(并非总是!),表达式可能如下所示
[text][id][type]
Run Code Online (Sandbox Code Playgroud)
在这种情况下应该替换为 <a href='id' class='type'>text</a>
想法?