Mailinglisten-Archive |
ANGEL Harald schrieb: > > Sebastian Mendel schrieb: >> der oder-Operand '|' müsste in Klammern einschließlich der zu suchenden Strings, >> '#\(?:[Bild:([0-9]+)\]|\[Bild:([0-9]+),([0-9]+)\])#'; > > Hallo Sebastian, danke noch mal für deine Hilfe und sry, weil ich ein so altes Thema noch mal aufgreife, aber: > Das mit den Klammern hab ich verstanden, aber deine "vereinfachte" Form nicht ganz: >> '#\[Bild:([0-9]+)(?:,([0-9]+))?\]#'; > > Ich hab jetzt nämlich beim editieren das gleiche Problem: > Der Tag kann diese 4 Aussehen haben: > <img src='bild.jpg' id='21' /> > <img src='bild.jpg' id='21' style='width:100px;' /> > <img src='bild.jpg' id='21' style='height:200px;' /> > <img src='bild.jpg' id='21' style='width:100px;height:200px;' /> > > Ich hab da jetzt einen mir scheint ziemlich umständlichen weg: > > $search = "#<img src='(.*)' id='([0-9]+)' style='(?:width:([0-9]+)px;|height:([0-9]+)px;|width:([0-9]+)px;height:([0-9]+)px;)' />#"; versteh jetzt zwar nciht gnaz was das mit dem vorrigen zu tun, aber egal > Das funktioniert zwar, aber die weite und höhe steht dann immer an unterschiedlichen Stellen im Array. > Kann man das hübscher hinbekommen? mhm, ein http://php.net/preg_match_all und: '/(height|width):([0-9]+)px;/' sollte helfen mach dann einfach mal ein print_r() mit dem Ergebnis ($matches), dann müssteste sehen wie du es verwenden kannst ansonsten frag nochmal -- Sebastian Mendel www.sebastianmendel.de
php::bar PHP Wiki - Listenarchive