私はwysiwyg拡張を構築しており、画像のアップロードと処理のためのライブラリを構築しました。 はさらに、私はそうのようなWYSIWYG出力から一部のデータを抽出したいコードに統合するには:Regex:タグから幅と高さを取得する
$content = '<img class="left media-id-1657" src="someurl" width="113" height="97" />';
preg_match_all('/<[^>]*class="[^"]*\media-id-([0-9]{1,10})\b[^"]*"[^>]*>/i', $content, $matches);
これは私にこの場合には1657
で指定されたidを与えます。それは素晴らしい作品であり、変更は必要ありません。
しかし、今でも幅と高さを取得する必要があります。しかし、いくつかの愚かな理由のために私はそれを抽出することはできません。私はこれを思いついた:
/<[^>]*class="[^"]*\media-id-([0-9]{1,10})\b[^"]*width="([0-9]{1,10})"[^>]*>/i
しかし、それは0試合を与えるように私がしたいとは思わない。 http://regexr.com/3h14n
あなたは文字列を最初に分解することができます、あなたの正規表現は(foreachを加えて)はるかに簡単に作成することができます。 – Nic3500
属性の順序が変わるとどうなりますか?パーサーを使用します。 – chris85