Heim > Backend-Entwicklung > PHP-Tutorial > 正则匹配有关问题 求指教

正则匹配有关问题 求指教

WBOY
Freigeben: 2016-06-13 13:28:04
Original
1066 Leute haben es durchsucht

正则匹配问题 求指教
获取一个A标签的Href属性

被匹配的字符

连接1
连接2
连接3


可以没有引号 可以有双引号 单引号 但是不允许一侧有引号另一侧没有引号

PHP code
<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

-->preg_match('/<a>/i', $str, $matches)

</a>
Nach dem Login kopieren



这样怎么不行呢

------解决方案--------------------
PHP code
$str=连接1
<a class="a" href="http://www.baidu.com/" id="a2">连接2</a>
<a class="a" href="http://www.baidu.com/" id="a3">连接3</a>
<a class="a" href="http://www.baidu.com/%20id=" a3>连接3</a>
STR;

preg_match_all('/<a>]+href=(["\']?)([^\s"\']+)\1[^>]*>/',$str,$matches);
print_r($matches[2]);
<br><font color="#e78608">------解决方案--------------------</font><br>
<dl class="code">PHP code<pre class="brush:php;toolbar:false">
$str=连接1
Nach dem Login kopieren
连接2
连接3 html; preg_match_all('/href=(["\'])?([^\s"\']+)/is', $str, $matches) ; print_r($matches);
------解决方案--------------------
PHP code
[User:root Time:14:14:52 Path:/home/liangdong/php]$ php preg.php 
Array
(
    [0] => Array
        (
            [0] => <div class="a" href="http://www.baidu.com/"> <div class="a" href="http://www.baidu.com/"> <div class="a" href="http://www.baidu.com/"> Array
        (
            [0] => "
            [1] => '
            [2] => 
        )

    [2] => Array
        (
            [0] => http://www.baidu.com/
            [1] => http://www.baidu.com/
            [2] => http://www.baidu.com/
        )

)
[User:root Time:14:14:53 Path:/home/liangdong/php]$ cat preg.php 
<?php $str = <<<EOF
<div class="a" href="http://www.baidu.com/" id="a1">连接1
<div class="a" href="http://www.baidu.com/" id="a2">连接2
<div class="a" href="http://www.baidu.com/" id="a3">连接3
EOF;
preg_match_all('/<div class="a" href="(%5B%22%5C'%5D?)(%5B%5E%5Cs%5C'%22%5D*)%5C1/is'," print_r> <div class="clear">
                 
              
              
        
            </div>
</div>
</div>
</div>
</div>
</div>
</div>
Nach dem Login kopieren
Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage