ich diesen Beispielcode haben:Muster für bekommen alle Tags
<ul><li><a href="http://www.example.com/aaa" class="tag">aaa</a></li><li><a href="http://www.example.com/bbb" class="tag">bbb</a></li><li><a href="http://www.example.com/ccc" class="tag">ccc</a></li></ul>
I aaa
, bbb
, ccc
Tags erhalten müssen, und ich schrieb dieses Muster:
/<a .* class=\"tag\">(.*?)<\/a>/
Aber diese Rückkehr zu falschen Ergebnissen . Sie können das Ergebnis here sehen.
Was passiert und wie kann ich es lösen?
Fügen Sie ein Fragezeichen nach dem ersten Sternchen ein: '/ (. *?) <\/a>/'. Sie können weiter darüber nachforschen, indem Sie [gierig und faul] (http://stackoverflow.com/questions/2301285/what-do-lazy-and-greedy-mean-in-the-context-of-regular-expressions) suchen regex auf google –
Rodolfo
@Rodolfo Danke, ich benutze '?' im zweiten Teil, aber ich habe den Gebrauch im ersten Teil vergessen. Warum postest du nicht als Antwort ?! –