2013-02-16 68 views
-1

函数原型:如何修改HTML标签名称的正则表达式?并让这些标签独立?

findHTMLElement($output, $tagName); 

看看正则表达式:

preg_match_all("/\<{$tagName}(.*)\>(.*)\<(.*)\/(.*){$tagName}\>/is", $output, $matches); 

如果我在HTML这样的:

<script type="text/javascript" language="javascript" src="miarchivo.css"> 
</script> 

<script type="text/javascript" src="otroarchivo.js"> 
</script> 

<script type="text/javascript" src="otroarchivox.js"></script> 

<script type="text/javascript" src="otroarchivox.js">xyzzz</script> 

我会得到这样的:

Array 
(
    [0] => Array 
     (
      [0] => <script type="text/javascript" language="javascript" src="miarchivo.css"> 
    </script> 

    <script type="text/javascript" src="otroarchivo.js"> 
    </script> 

    <script type="text/javascript" src="otroarchivox.js"></script> 

    <script type="text/javascript" src="otroarchivox.js">xyzzz</script> 
     )) 

而且,我想要得到的是:

Array 
    (
     [0] => Array 
      (
       [0] => <script type="text/javascript" language="javascript" src="miarchivo.css"> 
     </script> 

     [1] => <script type="text/javascript" src="otroarchivo.js"> 
     </script> 

     [2] => <script type="text/javascript" src="otroarchivox.js"></script> 

[3] =>  <script type="text/javascript" src="otroarchivox.js">xyzzz</script> 
      ))) 

如何修改正则表达式来得到类似的东西!

+1

你想要的是不使用正则表达式的HTML解析。我相当确定有一个PHP库。 – 2013-02-16 16:55:10

+0

什么是图书馆,我在使用DOMDocument时遇到了一些问题... – 2013-02-16 16:56:03

+0

您试过Google吗? – 2013-02-16 17:00:09

回答