用PHP正则表达式查询到匹配代码该怎么做?

来源:百度知道 编辑:UC知道 时间:2024/06/24 01:38:55
只要查询,不要替换的。该用什么?所查询的代码是有一定格式的,例如:<a href="space.php?uid=$post[authorid]" target="_blank" id="userinfo$post[pid]" class="dropmenu" onmouseover="showMenu(this.id)">$post[author]</a>
关键字是authorid、$post[author]。
补充一下,我问这个东西主要是想在一个论坛里插入一些代码来修改一些东西,我想做一个页面,可以选择某个模版的某个文件,然后查找到代码里的那个位置,在这个后面插入我的代码,
这个东西能不能实现??请大家告诉我~
补充2:
因为代码不是固定的,论坛不同页面人的名字这个变量名是不一样的。所以才想到有这个正则表达式来查询相似的代码。

<?php
$s='asdfasddsv adsfw t2345374367<a href="space.php?uid=$post[authorid]" target="_blank" id="userinfo$post[pid]" class="dropmenu" onmouseover="showMenu(this.id)">$post[author]</a>lkfjwoiejlrq5345'
?>
<?php
preg_match('/\<a href="space.php\?uid=([^"]+)" target="_blank" id="userinfo([^"]+)" class="dropmenu" onmouseover="showMenu\(this.id\)"\>([^<]*)\<\/a\>/i',$s,$matches);
echo $matches[0];
?>
$matches[0]就是查找出来的字符串,$post[authorid],$post[pid],$post[author]都可以变,只要其它结构不变就可以,因为不知道具体的字符串是什么样,所以就写成这样了,虽然不是很严格,但是一般来说也可以使用了。

用php的字符串函数 regi_replace()