我很难弄清楚这一点:
我有一个字符串 ($data),其中包含一些以这种方式格式化的链接:
[pagelink]Folder/File[/pagelink]
$data 包含多个这些链接。
我需要用实际的 html 链接替换这些链接,并且我有这个代码来做它(有效):
$data = preg_replace('/\[pagelink\](.*?)\[\/pagelink\]/is','<a href="$1">$1</a>',$data);
现在我想从显示给用户的链接部分中删除所有“文件夹”实例,而无需实际更改链接本身;换句话说,如果链接是这样的:
[pagelink]Folder/File[/pagelink]
我希望它变成这样:
<a href="Folder/File">File</a>
我尝试的是这样的:
$data = preg_replace('/\[pagelink\](.*?)\[\/pagelink\]/is','<a href="$1">'.( strstr($1) === false ? $1 : str_replace('/','',strstr($1)) ).'</a>',$data);
但我得到了一堆错误,所以我想我不能以这种方式使用反向引用。
你们能帮帮我吗?谢谢