単一の HTML 段落にある URL を取得して、PHP の .xml で抽出しようとしていますpreg_replace_callback
。現在、WordPress は以下を使用してこれを行います。
preg_replace_callback( '|^\s*(https?://[^\s"]+)\s*$|im', 'callback_function', $string );
しかし、それは独自の行の URL に一致します。その周りに HTML はありません。私がする必要があるのは、次のようなものから URL を照合することです。
<p>http://youtube.com/</p>
段落タグの前後のスペースは気にしません。その URL を抽出して、より詳細な情報に置き換えるだけpreg_replace_callback
です。
そこに何か助けはありますか?
更新: さて、私は次のようないくつかの段落を持つ投稿のテキストを持っています:
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis et nunc vel felis vulputate tincidunt. In dapibus tempus sollicitudin. Nullam quis ultricies tortor. Ut malesuada aliquet enim. Aliquam et lobortis urna. Sed commodo malesuada malesuada. Donec cursus nisi nec mauris venenatis pharetra. Curabitur ut leo purus.</p>
<p>http://youtube.com/</p>
<p>Etiam non odio tellus, vel imperdiet nunc. Praesent rutrum sagittis purus, quis pretium eros varius ut. http://google.com/ Ut id orci eu lacus aliquam luctus. Sed dolor quam, suscipit eu dapibus feugiat, lacinia vitae augue.</p>
そのテキストから抽出したいのは、段落内のhttp://youtube.com/だけです。別の段落に Google.com へのリンクがあるようですが、それは必要ありません。私が欲しいのは、そのリンク (またはリンク) が独自の段落だけにあることだけです。コールバック 'http://youtube.com/' に引数として渡されます。