2013-02-01 57 views
0

字符串我在一个串中的HTML文件的代码,下面给出这样的:拆分根据第一子串和第二另一个子

--- few lines of code --------- 

<SCRIPT language="javascript" type="text/javascript"> 
var statList = new Array(
0, "192.168.1.179", "88-53-95-28-2B-AF", 194280, 101141053, 0, 0, 0, 0, 0, 0, 0, 0, 
1, "192.168.1.170", "60-C5-47-10-37-FD", 132316, 65860791, 0, 0, 0, 0, 0, 0, 0, 0, 
2, "192.168.1.151", "68-5D-43-21-76-95", 9887, 3898646, 0, 0, 0, 0, 0, 0, 0, 0, 
3, "192.168.1.134", "6C-3E-6D-8C-FF-62", 26405, 7521875, 0, 0, 0, 0, 0, 0, 0, 0, 
4, "192.168.1.124", "04-F7-E4-78-D3-D0", 6189, 1791672, 0, 0, 0, 0, 0, 0, 0, 0, 
5, "192.168.1.121", "60-C5-47-10-40-92", 122657, 91113301, 0, 0, 0, 0, 0, 0, 0, 0); 
</SCRIPT> 

---- Few other lines of code --------- 

我想提取含有Array声明<script>块。

我可以使用任何PHP函数执行此操作吗?

+0

你的第一块和第二块看起来和我完全一样吗? –

+0

我在上面写过脚本代码上方的“几行代码”,下面是我想跳过的脚本代码。 –

回答

0

如果您可以找到明确的分隔符,该分隔符只在字符串的开头出现一次,而另一个只在末尾出现一次,则可以轻松使用preg_match。否则,你仍然可以使用preg_match,但是编写一个好的RegExp会困难得多。如果您想提取IP/MAC数据,则可能需要直接从RegExp开始。

0

这段代码呢?

$content = file_get_contents('____URL_of_your_html____'); 
if(preg_match('/(var statList = new Array\(.*?\);)/si',$content,$matches)){ 
    echo $matches[1]; 
} 
+0

你不需要任何内存捕获,你应该使用非常规的匹配。你忘了'/ s'修饰符。 –

相关问题