php正则表达式如何写?

我要用PhP正则把"topindex.php?zlId=10-3-10-10-10-ZL-d-2"替换成"topindex.php?zlId=1&cdhId=10&dhI... 我要用PhP正则把"topindex.php?zlId=10-3-10-10-10-ZL-d-2"替换成"topindex.php?zlId=1&cdhId=10&dhId=1&zhId=1&shId=1&field=CDH&sort=d&page=2" 这个表达式应该如何写?急!
<table cellpadding="0" cellspacing="0" align="center"> <tr>
<td class="title"><h1><a href="/topview/600010.html" class="stockname">包钢股份</a></h1> <span class="code" value="SH600010">600010</span></td>
<td>功能<br /><a href="#usage" onclick="return showCon()">指标用法</a></td>
<td>资金流向<br /><a href="" )">分时线</a></td>
<td class="td1">上一支股票:<a href="/600009.html" title="上一支股票">上海机场(600009)</a><br />下一支股票:<a href/600011.html" title="下一支股票">华能国际(600011)</a></td> </tr>
</table>
我要截取为
<table cellpadding="0" cellspacing="0" align="center"><tr><td class="title"><h1><a href="/topview/600010.html" class="stockname">包钢股份</a></h1><span class="code" value="SH600010">600010</span></td><td class="td1">上一支股票:<a hrefpview/600009.html" title="上一支股票">上海机场(600009)</a><br />下一支股票:<a href/600011.html" title="下一支股票">华能国际(600011)</a></td></tr>
</table>
php 正则表达式,应该如何呢???????
展开
 我来答
凌的博客
2010-04-24 · TA获得超过235个赞
知道小有建树答主
回答量:280
采纳率:100%
帮助的人:161万
展开全部
<?php

$m = "topindex.php?zlId=1-3-10dd-10-10-ZL-d-2";

echo preg_replace("/topindex\.php\?zlId=(\w*)-(\w*)-(\w*)-(\w*)-(\w*)-(\w*)-(\w*)-(\w*)/","topindex.php?zlId=$1&cdhId=$1&dhId=$3&zhId=$4&shId=$5&field=$6&sort=$7&page=$8",$m);

?>

问题补充: 你的描述很不清楚:但是可以转换成你要的那种
<?php

$str='<table cellpadding="0" cellspacing="0" align="center">
<tr>
<td class="title">
<h1><a href="/topview/600010.html" class="stockname">包钢股份</a></h1>
<span class="code" value="SH600010">600010</span>
</td>

<td>
功能<br /><a href="#usage" onclick="return showCon()">指标用法</a>
</td>
<td>资金流向<br /><a href="" )">分时线</a></td>

<td class="td1">
上一支股票:<a href="/600009.html" title="上一支股票">上海机场(600009)</a><br />
下一支股票:<a href/600011.html" title="下一支股票">华能国际(600011)</a>
</td>
</tr>
</table>
';
echo preg_replace("/<td>.*功能.*<td.*>.*<\/td>/isU","",$str);
?>
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
TableDI
2024-07-18 广告
在Excel中,字符串匹配函数主要用于查找和定位特定字符串在文本中的位置或进行替换操作。常用的字符串匹配函数包括FIND、SEARCH、SUBSTITUTE和REPLACE等。FIND和SEARCH函数用于查找字符串的位置,而SUBSTIT... 点击进入详情页
本回答由TableDI提供
yeahrahxephon
2010-04-22 · TA获得超过1166个赞
知道小有建树答主
回答量:1192
采纳率:0%
帮助的人:1227万
展开全部
后面参数字符串替换没有规律可循呢,比如ZL对应的field=CDH
第一个10对应zlId=1,第二个3对应cdhId=10。没什么规律的话直接替换好点吧?我觉得啊
或者能再多点例子也好
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
xudianyang
2010-04-22 · TA获得超过410个赞
知道小有建树答主
回答量:87
采纳率:0%
帮助的人:122万
展开全部
可以这样做!
<?php
$str1="topindex.php?zlId=10-3-10-10-10-ZL-d-2";
$str2="?zlId=1&cdhId=10&dhId=1&zhId=1&shId=1&field=CDH&sort=d&page=2";
echo preg_replace('/(?=\?)(.*)/',$str2,$str1);
?>
即使你后面的参数是通过程序生成的也可以通过设置变量来解决!
祝你成功!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式