我有这个函数可以解析一些内容以检索自制链接标签并将其转换为普通链接标签。
可能的输入:
<p>blabalblahhh <moolinkx pageid="121">text to click</moolinkx> blablabah</p>
输出 :
<p>blabalblahhh <a href="whateverpage.htm">text to click</a> blablabah</p>
这是我的代码:
$regex = '/\<moolinkx pageid="(.{1,})"\>(.{1,})\<\/moolinkx\>/';
preg_match_all( $regex, $string, $matches );
如果字符串中只有一个,它会很好地工作。但是一旦有第二个,它就不起作用了。
输入:
<p>blabalblahhh <moolinkx pageid="121">text to click</moolinkx> blablabah.</p>
<p>Another <moolinkx pageid="128">text to clickclick</moolinkx> again blablablah.</p>
这就是我在 print_r($matches) 时得到的:
Array
(
[0] => Array
(
[0] => <moolinkx pageid="121">text to click</moolinkx> blablabah.</p><p>Another <moolinkx pageid="128">text to clickclick</moolinkx>
)
[1] => Array
(
[0] => 121">text to click</moolinkx> blablabah.</p><p>Another <moolinkx pageid="128
)
[2] => Array
(
[0] => text to clickclick
)
)
我对正则表达式不放心,所以它一定是非常微不足道的......但我无法确定它是什么:(
非常感谢您!
注意:这是我在这里的第一篇文章,尽管我多年来一直在使用这个很棒的问答!