2010-08-09 185 views
0
<script type="text/javascript"><!-- 
Vertical1_437 = "false-2010"; 
ShowAdHereBanner1437 =" true"; 
RepeatAll1437 = "true"; 
NoFollowAll1437 ="true"; 
//--> 
</script> 

我试图让2010年的部分出假2010。 我希望它只回声2010年.. 感谢您的帮助。php preg_match抓住

这就是我开始和被困

<?php 
$get2010 = preg_match('/\<!--(.*?)-->/', $get2010, $m); 
echo $m[1]; 
?> 

哦.. 2010年是随机生成的数字......它的变化。

回答

0
preg_match('!Vertical1_437\s*=\s*"\D+(\d+)"!', $get2010, $m); 
echo $m[1]; 

这里假设它始终是Vertical1_437的RHS。我还假设你在$get2010中有一段HTML代码作为字符串。

0

如果您可以更具体地了解哪些数据是动态数据,哪些是静态数据,这可能会有帮助。如果Vertical1_437和虚假是静态的,2010年的部分是唯一的动态部分,那么这应该工作:

preg_match{'#(.*Vertical1_437.*false-)(\d{1,4})(.*)#', $get2010, $m); 
echo $m[2]; 

矿假设“2010”是一个数字是1-4位,可以调整,在{1,4}部分。

这应该对给定的例子。如果某些其他文本是动态生成的,那么可能会有些事情要改变。