私は何年も正規表現を理解しようとしてきましたが、役に立ちませんでした!
私は、ユーザーがテキストなどを投稿したり、YouTube や soundcloud 埋め込みコードを投稿したりできるシステム (わかりやすくするためのフォーラムとしましょう) を持っています。送信されたコンテンツをクリーンアップするためのフィルターを作成しています (および htmlpurifier を使用しています)。私たちのサイトは SSL であるため、埋め込みコードを https:// にフォーマットし、iframe のサイズなどを変更したいので、すべての youtube と soundcloud の iframe をキャッチし、それらをタグに変換します"%youtube_embed%=dhusydg"
。すべての iframe など、私の形式に従って youtube/soundcloud iframe 埋め込みを構築します。
これが私が持っているものです...それは機能していません!
$string = preg_replace('/<iframe width="420" height="315" src="http\:\/\/www.youtube.com\/embed\/(.*)" frameborder="0" allowfullscreen>\<\/iframe>/', '%youtube_embed%=$1', $string);
これは、標準の youtube 埋め込みコードを見つけて、URL からビデオ ID を抽出し、後で置き換えることができる文字列に変換することを想定しています。しかし、正規表現に頭を悩ませることができないため、何も起こりません! どうすればいいですか?